matlab:将方括号添加到单元格数组中的所有单个数值



我想将一个单元格数组(Ma)添加到另一个单元格阵列中。但是,两者都需要具有相同的格式(方括号中的单个单元格)。

例如,我有一个数组。。

马{1,:}。'

ans=

第1列至第8列

'83.6'    '85.2'    '91'    '87.9'    '91.8'    '86.3'    '90.6'    '90.2'  

如何将方括号添加到各个单元格的所有数值中?

下面是我希望获得的,它也是一个1x8小区。

ans =[83.6]    [85.2]    [91]    [87.9]    [91.8]    [86.3]    [90.6]    [90.2]

您的单元格值是字符串(您可以通过值周围的引号'来判断)。您希望将它们转换为数值(如您所说的"在它们周围添加方形brrckets")。

要将字符串转换为双精度,可以使用str2double命令:

M = str2double( M{1,:} );

您不需要自己添加方括号。这只是意味着它是一个单元格中的数值。

为了实现这一点,您应该执行以下操作,同时使用num2cellstr2double功能:

newM = num2cell(str2double(Ma{1,:}))

最新更新