Matlab函数unique
不适用于标量的单元格数组,例如。
>> unique([1 2 3 1])
ans =
1 2 3
>> unique({1 2 3 1})
Error using cell/unique (line 85)
Input A must be a cell array of strings.
我可以做些什么来修改独特的功能,以便它可以在标量的单元格阵列上工作?我希望
>> unique({1 2 3 1})
ans =
[1] [2] [3]
答案 0 :(得分:5)
我建议在单元格中使用任意一个字符串,或在向量中使用双精度数字。许多函数如unique
仅适用于字符串的单元格数组,而不适用于任何其他单元格。
unique({'1' '2' '3' '1'})
要转换单元格,请使用
cellfun(@num2str,{1,2,3,1},'uni',false)