此代码:
if (prefixTree(1,4).prefixTree2(:,2)=='2')
unique(prefixTree(1,4).prefixTree2(:,3))
end
返回此错误:
“cell”类型的输入参数的未定义函数“eq”。
为什么?
答案 0 :(得分:5)
错误意味着prefixTree(1,4).prefixTree2(:,2)
是一个单元格数组。您可以使用prefixTree(1,4).prefixTree2{:,2}
访问第二列的各个元素。此外,冒号运算符意味着prefixTree(1,4).prefixTree2(:,2)
中有多个元素,但您正在尝试进行标量比较。最后,您要与char
('2'
而不是数字2
)进行比较,因此最好使用string functions。您可以使用strcmp
检查单元格的每个元素:
prefixTree(1,4).prefixTree2 = {'1' '2';'3' '2'}; % Example data
strcmp(prefixTree(1,4).prefixTree2(:,2),'2')
if all(strcmp(prefixTree(1,4).prefixTree2(:,2),'2'))
...
end