我有一个11x7双阵列A。
我想将这些数字舍入到2位小数(我不在乎是否引入了一些小的舍入错误),然后创建一个11x7的字符串数组。
CellArray = arrayfun(@num2str, A, 'unif', 0)
完成了创建单元格数组的工作,但据我所知,当我将双数组转换为字符串数组时,进行舍入时已为时已晚。< / p>
所以我尝试了CellArray = strtrim(cellstr(num2str(A,'%.2f')))
。
这将创建一个字符串的单元格数组,并且舍入是合适的。但是,它是11x1,而不是11x7,这就是我想要的。
答案 0 :(得分:2)
使用@(A)(num2str(A,'%.2f')
代替@num2str
来设置匿名函数,该函数会使用您想要的格式转换为sting。
CellArray = arrayfun(@(A)(num2str(A,'%.2f')), A, 'unif', 0)