如何在符号或字符串中转换数字结果?

时间:2011-04-14 17:39:18

标签: matlab

这是我的问题。 我制作了一个算法,可以对某些单词进行排列。我用数值替换每个单词,这样我就可以用它们进行算术运算(例如1 ='banana'2 ='child'3 ='car'4 ='tree'等)。 假设在运行算法后,matlab给了我这个矩阵作为结果: ans = [2,2,1; 4,3,3] 我永远无法弄清楚的是如何告诉他 - 用符号替换数字并写下:

ans = [孩子,孩子,香蕉;树,汽车,汽车] - 所以我不必查看我的图表中的每个数字,并用相应的单词替换它??

2 个答案:

答案 0 :(得分:1)

如果你有一个包含单词的数组和另一个带索引的数组,你可以生成一个数组,用相应的单词替换每个索引,如下所示:

words = {'banana','child','car','tree'};

numbers = [2 2 1;4 3 3];

>> words(numbers)
ans = 
    'child'    'child'    'banana'
    'tree'     'car'      'car'

答案 1 :(得分:1)

如果您有统计工具箱,也可以使用ordinal数据类型。

>> B = ordinal([2 2 0; 4 3 3], {'banana','child','car','tree'})
B = 
     child      child      banana 
     tree       car        car    

请注意,它会自动处理零。然后你可以做以下事情:

>> B=='child'
ans =
     1     1     0
     0     0     0