Arrays 如何增加单元格数组的大小?
我有一个尺寸为:1x1x2的单元阵列 我想通过添加一行“”将其增加到3x11x2 我该怎么做 例如:数组A:Arrays 如何增加单元格数组的大小?,arrays,matlab,matrix,cell,dimensions,Arrays,Matlab,Matrix,Cell,Dimensions,我有一个尺寸为:1x1x2的单元阵列 我想通过添加一行“”将其增加到3x11x2 我该怎么做 例如:数组A: a(:,:,1) = 'Value3' '' '' 'Value1' '' '' '' '' '' '' '' a(:,:,2) = '' '' '' '' 'Error' '' '' '' '' '' '' 我希望它是: a(:,:,1)
a(:,:,1) =
'Value3' '' '' 'Value1' '' '' '' '' '' '' ''
a(:,:,2) =
'' '' '' '' 'Error' '' '' '' '' '' ''
我希望它是:
a(:,:,1) =
'Value3' '' '' 'Value1' '' '' '' '' '' '' ''
'' '' '' '' '' '' '' '' '' '' ''
a(:,:,2) =
'' '' '' '' 'Error' '' '' '' '' '' ''
'' '' '' '' '' '' '' '' '' '' ''
最通用的代码是:
a = [a; reshape(repmat({''},1,size(a,2)*size(a,3)),1,size(a,2),size(a,3))];
希望这有帮助…只是部分答案,但这应该可以让您轻松获得正确数量的空字符串:
regexprep(a(:,:,1),'.','')
请注意,这不是一个矩阵,而是一个单元格数组。这会触发一个错误???使用==>vertcat时出错,CAT参数维度不一致。oops my bad,仅使用1x2矩阵检查,现在应该可以了。。。谢谢你的检查这不是一般的。例如,您应该使用
大小(a,3)
。我修正了你的密码,没问题+谢谢你们的努力,谢谢你们。我对Matlab很陌生,对我来说仍然很困惑。因此,为了更好地理解您的解决方案,如果我想将A矩阵从3x11x2增加到3x11x3,代码应该是什么?(现在增加Zaxis)如果(:,:,i)包含多行,则将创建多个空行,而不是仅创建一个空行。