用于Matlab中具有不同大小数字字符串的单元格数组的Cell2mat

时间:2018-12-07 10:20:59

标签: matlab matrix cell

嗨,我有一个要转换为矩阵的单元格数组:

a = {'1.2'; '1.3'; '1.45'}
cell2mat(a)

给我错误:

Error using cat
CAT arguments dimensions are not consistent.

Error in cell2mat (line 84)
            m{n} = cat(1,c{:,n});

请帮助谢谢!

2 个答案:

答案 0 :(得分:3)

cell2mat失败,因为它期望将单元格数组中的数字元素放置在矩阵中。您拥有字符数组,而不是数字元素,因此需要使用str2double将它们转换为双精度(输出是所需的矩阵)。

a = {'1.2'; '1.3'; '1.45'};
out = str2double( a ); 

答案 1 :(得分:-1)

您可以尝试以下方法:

a = {[1.2]; [1.3]; [1.45]}
cell2mat(a)