如何在MATLAB中将单元格数组更改为数值?

时间:2013-04-24 05:45:35

标签: matlab

我想做以下

输入:(单元格数组)

  

ab

     

AC

     

广告

     

AAB

     

AC

     

AAC

     

AAB

     

AC

我希望输出映射到唯一的数值,例如

  

1

     

2

     

3

     

4

     

2

     

5

     

4

     

2

有一种简单的方法吗? 输入大约250,000并且可变长度。我只想将具有相同内容的单元格映射到相同的数字。

感谢。

1 个答案:

答案 0 :(得分:5)

如果我们调用您的单元格数组A,则以下命令可以满足您的需求:

[uniqueCells,~,idxYouWant] = unique(A);

在此,uniqueCells是您拥有的唯一值(按排序顺序); idxYouWant是一个你想要的数字数组,其中

A = uniqueCells(idxYouWant);

我认为这正是你所需要的。