How to Concatenate two matrix's each elements ?
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Lenin chakravarthy Kuppannan
le 17 Mai 2016
Modifié(e) : Stephen23
le 20 Mai 2016
Hi, I am trying to concatenate two matrix's each elements, like following,
A = [ a b c; d e f; g h i] and B = [ 1 2 3; 4 5 6; 7 8 9]
Now i need to create a new matrix like c = [ a1 b2 c3; d4 e5 f6; g7 h8 i9]
Note: here, "a1" is not multiplying 'a' and '1' ( != a * 1). Just concatenating the two elements.
Pls help to do it.
Have a nice day.
- Lenin
0 commentaires
Réponse acceptée
Elias Gule
le 17 Mai 2016
Let's try:
syms a b c d e f g h i % initialize symbols
A = [a b c;d e f;g h i];
B = [1 2 3;4 5 6;7 8 9];
sz = size(A);
C = cell(sz); % initialize a cell array to hold the concatenated elements
for row = 1 : sz(1)
for col = 1 : sz(2)
a = A(row,col);
b = B(row,col);
C{row,col} = strcat(a,num2str(b)); % convert B(i,j) to string for concatenation
end
end
2 commentaires
Lenin chakravarthy Kuppannan
le 18 Mai 2016
Modifié(e) : Lenin chakravarthy Kuppannan
le 18 Mai 2016
Elias Gule
le 20 Mai 2016
Ola!
Thanks, your example matrices just made my life easy. Try the following code:
C = arrayfun(@(x,y) str2double(strcat(num2str(x),num2str(y))),A,B)
where A and B are numerical matrices of the same size.
Plus de réponses (1)
Andrei Bobrov
le 17 Mai 2016
Modifié(e) : Andrei Bobrov
le 18 Mai 2016
A = [ 1 2 3; 4 5 6; 7 8 9];
B = [ 1 2 3; 4 5 6; 7 8 9];
str2double(strcat(arrayfun(@num2str,A,'un',0),arrayfun(@num2str,B,'un',0)))
0 commentaires
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!