我有一个10,000 x 65的单元格,0和1和1,所以例如,如果我输入
C(1,1)
我返回[0]或同样返回C(3,4)a [1]
我需要一种方法将每个0变成一个空白单元格,每1个变成一个字符
我尝试了以下但收效甚微
[rows, cols] = size(M); for i = 1:rows for j = 1:cols if strcmp(M(i,j), 1) M(i,j) = 't'; end end end
它返回同样的东西,我猜测它没有将1#识别为字符串。任何想法只是简单地在Excel中进行转换。 感谢
答案 0 :(得分:1)
您没有正确访问单元格数据结构。
首先,如果M
确实是一个单元格数组,则必须使用M{i,j}
来访问数据。
M(i,j)
所做的只是创建一个子单元格数组,其中包含M{i,j}
作为条目。
如果您的单元格数组包含应使用strcmp
的字符串,则strcmp(M{i,j}, '1')
未正确使用。
另一方面,如果您的单元格数组包含整数,则必须使用:M{i,j}==1
。