Azzera filtri
Azzera filtri

how to merge three matrix into one ?

1 visualizzazione (ultimi 30 giorni)
if i have three matrix with different size like this
A = [ 1 1 0 0 1 0
1 0 1 0 0 1
1 1 0 1 0 1
0 1 0 1 0 0 ]
B = [ 2 1 0
1 1 1
2 1 1
1 1 0 ]
C = [ 0 1 0 0 0 0
3 2 1 2 1 2 ]
And i want to merge them like this ( A is the middle , C above A and B on the Right of A )
D = [ 0 1 0 0 0 0
3 2 1 2 1 2
1 1 0 0 1 0 2 1 0
1 0 1 0 0 1 1 1 1
1 1 0 1 0 1 2 1 1
0 1 0 1 0 0 1 1 0 ]
  4 Commenti
Firas Al-Kharabsheh
Firas Al-Kharabsheh il 4 Apr 2016
yes its a matrix but i put a spaces between three matrix to explain to you how i want to merge these matrices
Azzi Abdelmalek
Azzi Abdelmalek il 4 Apr 2016
Modificato: Azzi Abdelmalek il 4 Apr 2016
From what you posted, in D, the frist three rows contain 6 elements, and the other rows contain 9 elements. You have to precise if you want to append with zeros or nans. A space is not a number, you can append with empty vectors if D was a cell array

Accedi per commentare.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 4 Apr 2016
If you want to append with zeros
A = [ 1 1 0 0 1 0
1 0 1 0 0 1
1 1 0 1 0 1
0 1 0 1 0 0 ]
B = [ 2 1 0
1 1 1
2 1 1
1 1 0 ]
C = [ 0 1 0 0 0 0
3 2 1 2 1 2 ]
ma=size(A,2)
mb=size(B,2)
[nc,mc]=size(C)
m=max(mc,mb+ma);
C=[C zeros(nc,m-mc)];
out=[C;A B]
  3 Commenti

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by