find matched data (place of equal values) ?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Amr Hashem
am 15 Mai 2015
Kommentiert: Amr Hashem
am 16 Mai 2015
how i can find matched cells in two columns with accept multi matches for any cell.
the data is:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/150113/image.jpeg)
i use this code:
for j=1:length(defs)
querymdr=data2(:,1); # quermdr 5*1 cells
y=alldata(:,1); % y 37*1 cells
ind=find(y==querymdr) ;
record= alldata(idx,:);
% record=[alldata{idx(1),:}];
for k=2:length(idx)
record = [record,(alldata(idx(k),6))];
end
data1(j,:)=record;% put combined record into result table
end
it gives me an error in
ind= find(y==querymdr) ;
with a message "Undefined function 'eq' for input arguments of type 'cell'. " what i can do ?
any help please...!
0 Kommentare
Akzeptierte Antwort
Andrei Bobrov
am 15 Mai 2015
a1 = cat(1,querymdr{:});
a2 = cat(1,alldata{:,1});
ii = ismember(a2,a1);
record = [alldata{ii,6}];
3 Kommentare
Walter Roberson
am 15 Mai 2015
The only difference between cat(1,querymdr{:}); and the [querymdr{:}] that I suggested earlier is that the cat(1) produces a column vector and the form I used creates a row vector.
Weitere Antworten (1)
Walter Roberson
am 15 Mai 2015
What you do is you stop posting the same material and you use the solution I already gave in your previous topic
8 Kommentare
Walter Roberson
am 15 Mai 2015
When working with a cell array, one has to know the class() and size() of the entries in the array as well.
Siehe auch
Kategorien
Mehr zu Graphics Object Programming 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!