why is an error in this matrix??

2 Ansichten (letzte 30 Tage)
Firas Al-Kharabsheh
Firas Al-Kharabsheh am 5 Apr. 2016
Bearbeitet: MHN am 5 Apr. 2016
if i have this matrix
M =[ 0 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1
1 1 1 0 1 1 1 1 1 1 1 1 0 1 0 1
1 1 0 1 0 0 0 0 0 0 0 1 1 1 1 1
0 1 0 1 1 1 0 0 1 0 0 1 1 1 1 1
0 1 1 1 1 0 1 0 0 1 1 1 1 1 0 1
0 0 1 1 0 1 1 0 1 1 1 0 1 0 0 1
0 1 0 0 1 0 1 1 1 1 0 1 1 1 0 1
0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 ]
with this code
[n,m]=size(M);
c1=cell(n,m);
maxc=1;
for k=1:m
a=[0 M(:,k)' 0];
ii1=strfind(a,[0 1]);
ii2=strfind(a,[1 0]);
maxc=max(maxc,numel(ii1));
c1{k}=(ii2-ii1)';
end
M_column=cell2mat(cellfun(@(x)[zeros(1,maxc-numel(x));x],c1,'un',0));
  • when i run this code ,, the error occurs in M_column
how i can solve it????

Akzeptierte Antwort

MHN
MHN am 5 Apr. 2016
Bearbeitet: MHN am 5 Apr. 2016
Your vectors in c1 are m*1 matrices, so you should make n*1 zeros matrices instead of 1*n.
M_column=cell2mat(cellfun(@(x)[zeros(maxc-numel(x),1);x],c1,'un',0));

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by