在MATLAB中将数字转换为单元格数组中的字符串

时间:2013-02-25 21:45:02

标签: string matlab type-conversion cell-array

我有一个包含数字和字符串数据的单元格数组。我需要将数字转换为字符串,以便我可以使用unique()函数。

a = {1; 4; 'lf'}
result --> {'1', '4', 'lf'}; % Now unique() function can be used

有一些在线解决方案可以处理列数值的情况。但这些不能在这里使用,因为至少有一行有字符串作为数据。应该赞赏矢量化解决方案。

1 个答案:

答案 0 :(得分:8)

使用cellfun()num2str()应用于每个单元格元素:

result = cellfun(@num2str, a, 'UniformOutput', false)

这个(UniformOutput设置为false)将自动处理数组的非标量char元素。