Matlab:如何计算单元格中存储的唯一字符串数量?

时间:2010-09-24 12:25:13

标签: matlab

给定一个包含字符串值的单元格,我想计算它中存储了多少个不同的值。以下是示例值:

A(1, 1) = 'DA4590162D037A78D96557AA886ADF9715B79C75';
A(2, 1) = 'AFAB19476C2CEEEE101FFA45FD207BA8B6185B29';
A(3, 1) = '99C1F96461BC870574D002034F001BA3F96A9AB5';
...
A(8, 1) = '99C1F96461BC870574D002034F001BA3F96A9AB5';
A(9, 1) = '4B7F0F39C1192D12E6C798143981048D01CDDDD3';
...

大约有3M行。有谁知道计算结构中存储了多少唯一值的方法?

谢谢!

1 个答案:

答案 0 :(得分:5)

数组B = UNIQUE(A)

A返回与A中相同的值,但是 没有重复。 B也将被排序。 A可以是一个单元格数组 字符串。

所以

U = unique(A, 'rows'); %because each string is one row
numUnique = length(U)