is not equal in cellarray

5 Ansichten (letzte 30 Tage)
Jwana
Jwana am 4 Nov. 2012
how to make a not equal if statement in cellarray?
I tried this one:
for i=1:length(levelxxx)
if ~isequal(levelxxx{i},level1_root)
levelxxx(i,:)=[];
end
end
but it is not working!!
  2 Kommentare
Jan
Jan am 4 Nov. 2012
Whenever you write "is not working" in a forum, it is useful and recommended to explain, what actually happens: do you get an error message (if so, post a complete copy of the message) or do the results differ from your expectations?
Jwana
Jwana am 5 Nov. 2012
the error mesage is: Index exceeds matrix dimensions.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 4 Nov. 2012
Maybe this?
idx = ismember(levelxxx(:,1),level1_root,'rows');
levelxxx= levelxxx(idx,:);
  2 Kommentare
Jwana
Jwana am 5 Nov. 2012
error message : Index exceeds matrix dimensions.
Matt J
Matt J am 5 Nov. 2012
Bearbeitet: Matt J am 5 Nov. 2012
Works fine for me:
>> levelxxx={'111','zz';'222','abgh';'111','hyur'}; level1_root='111';
>> idx = ismember(levelxxx(:,1),level1_root); levelxxx= levelxxx(idx,:)
levelxxx =
'111' 'zz'
'111' 'hyur'

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Azzi Abdelmalek
Azzi Abdelmalek am 4 Nov. 2012
Bearbeitet: Azzi Abdelmalek am 4 Nov. 2012
when the condition is true :
levelxxx(i,:)=[];
then the size of levelxxx will be reduced!
use
v_temp=levelxxx
for i=1:length(v_temp)
if ~isequal(v_temp{i},level1_root)
levelxxx(i,:)=[];
end
end
  3 Kommentare
Jwana
Jwana am 5 Nov. 2012
Thank you for your responses, how ever ;it gives error message : Matrix index is out of range for deletion.
Azzi Abdelmalek
Azzi Abdelmalek am 5 Nov. 2012
Bearbeitet: Azzi Abdelmalek am 5 Nov. 2012
I did a big mistake, try Simon's code. And post a sample of your data

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrix Indexing 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