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

时间:2017-03-17 08:37:50

标签: arrays matlab cell cell-array

我有数字矩阵的单元格数组如下:

  c= {[1,2,3,4] [1,2,4,3]   [1,3,2,4]}

表示1 = A,2 = B,3 = C,4 = D.如何将c转换为字符串的单元格数组,如下所示?

 s= {[A,B,C,D]  [A,B,D,C]   [A,C,B,D]}

我们如何概括这个规则,如1到7和A到G ......?

1 个答案:

答案 0 :(得分:4)

如果你是[A,B,C,D]打算

['A','B','C','D'] => 'ABCD'

也就是说,要将它们连接到一个字符串,您可以为每个数字添加64(以获得正确的ASCII编码)并将数字转换为字符。

s = cellfun(@(x) char(x + 64), c, 'UniformOutput', false);
s = 
     'ABCD'    'ABDC'    'ACBD'