我有一个150乘1的单元格数组。我的问题是为什么我们不能使用eq函数,如
species(1) = 'setosa'
的值,
但是当我写species(1) == 'setosa'
时,我希望得到一个逻辑1
,但MATLAB给出Undefined function eq for cell array
。我需要这个,因为我想将它转换为逻辑数组。我应该如何实现这个
答案 0 :(得分:0)
您可以同时使用find()
和strcmp()
来完成此操作。
示例:
stts = {'Gable','Hip','Shed','Shed','Other'}; % string cell array
[truefalse,index]=find(strcmp(stts,'Shed')) % do it here if you want to find `Shed`
在此之后,truefalse
是逻辑值,index
是找到的相应索引。
truefalse =
1 1
index =
3 4