can i compare two cell array with double and string value?
1 次查看(过去 30 天)
显示 更早的评论
i have a 303*14 dataset i want compare every raw of this dataset with a 1*14 vector
this dataset has double and string values but the vector just has string values in fact i want compare string values with double values!
2 个评论
Azzi Abdelmalek
2013-12-22
How to compare double with string? Can you provide a short example: a 3x4 cell array fo example.
dpb
2013-12-22
编辑:dpb
2013-12-22
Sotoo
>> c={'abc';2;'xyz'}; % some trivial data set
>> ismember({c{cellfun(@ischar,c)}}','xyz')
ans =
0
1
>>
maybe? Salt to suit for vectors, of course...
Now how to compare the doubles to strings -- for what definition of compare? If the strings are numeric representations then simplest would be to convert to numeric value w/ str2dble or the like and then do the comparison. Or, go the t'other way 'round and convert the doubles to character representation with appropriate number of significant digits and do the comparison in that domain.
Either way, as Azzi points out you'll need to define what it is you actually mean first...
回答(1 个)
Walter Roberson
2013-12-24
row_is_the_same = arrayfun( @(rownum) isequal( YourDataset(rownum,:), TheVectorToCompareTo), 1:size(YourDataset,1));
The answer will be false for every row since a number is not the same as a string, but you didn't ask us for advice about dealing with that.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!