返回由表格返回的最大频率字

时间:2014-04-27 18:26:32

标签: arrays matlab

我试图用matlab计算文本中的单词数(即每个单词的频率)。所以我使用的是代码:

a=tabulate(Myword);

执行后,此代码返回如下数组:

word .......count......percent

Hi..........10........0.12

No..........20........0.42

所以我想返回高频词。我怎么能这样做?

我使用了这段代码:

a=sortrows(a,2);

但它不起作用。

我是matlab的初学者

祝你好运

1 个答案:

答案 0 :(得分:1)

Tabulate返回cell array。您可以像这样得到高频词的行:

[~,idx] = max([a{:,2}])

它做的是取单元数组的第二列,将其转换为向量(通过[])并获取最大值的索引,该值是单元格数组上单词的行索引。然后,您可以使用idx来检索该字词:

a{idx,1}