Filter löschen
Filter löschen

cell matching

2 Ansichten (letzte 30 Tage)
Rusmaya Luthfina
Rusmaya Luthfina am 17 Okt. 2011
hi,
i have a code like this:
b = {'i'; 'need'; 'five'; 'rats'};
c = {'rats'; 'eat'; 'cheese'};
b{10} = [];
c{10} = [];
how do we match cell c with cell b?? i've tried using ismember but return error 'input must be array of string'
thank you,
---Maya----

Antworten (3)

Walter Roberson
Walter Roberson am 17 Okt. 2011
ismember(c,b)
However that will not work if your version of MATLAB is sufficiently old. Which version are you using?
  4 Kommentare
Walter Roberson
Walter Roberson am 18 Okt. 2011
Good question, I missed that. In that case,
ismember(c(~cellfun(@isempty,c)),b(~cellfun(@isempty,b)))
Jan
Jan am 18 Okt. 2011
@Walter: cellfun('isempty') is remarkably faster than cellfun(@isempty).

Melden Sie sich an, um zu kommentieren.


Fangjun Jiang
Fangjun Jiang am 17 Okt. 2011
Not sure why do you need to have the b{10}=[] and c{10} = [] statement. If it's allowed, you can set those elements to be empty string, and then run ismember().
b = {'i'; 'need'; 'five'; 'rats'};
c = {'rats'; 'eat'; 'cheese'};
b(end+1:10) = {''};
c(end+1:10) = {''};
ismember(b,c)
  1 Kommentar
Rusmaya Luthfina
Rusmaya Luthfina am 18 Okt. 2011
actually, i'm programming document retrieval using vector space model, which between database and query must have same dimension.. :(

Melden Sie sich an, um zu kommentieren.


Rusmaya Luthfina
Rusmaya Luthfina am 18 Okt. 2011
i've been able to solve my problems.. :D thx u 4 your help!
---Maya--

Kategorien

Mehr zu Structures finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by