我有一个23x5的单元格数组,我正在尝试替换所有单元格,但第一个单元格中的空单元格替换所有单元格。
当我尝试array{2:end,4}=[]
时,我得到“这项任务的右侧数值太少,无法满足左侧。”
仍然对Matlab处理不同类的方式感到困惑,我也试过了
array(2:end,4)=[]
并获取“空赋值只能有一个非冒号索引。”
我知道for循环可以很容易地清空每个单元格的内容,但我觉得必须有一个更简单的解决方案来解决这个问题。
感谢您的帮助。
答案 0 :(得分:6)
尝试使用:
array(2:end,4) = {[]}
例如:
>> array = cell(23,5);
>> array(:) = {1};
>> array(2:end,4) = {[]}
array =
[1] [1] [1] [1] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]
[1] [1] [1] [] [1]