我正在从文本文件中提取单词以及基于出现的文本中的频率,我将使用以下语句获得所有单词以及频率:
freq = [num2cell(counts.') words.']
但是这个语句输出所有带有频率(计数)的单词,如下所示:
[1] '1980s'
[1] '1993'
[2] 'AI'
[1] 'After'
[1] 'And'
[1] 'Another'
[1] 'Artificial'
[1] 'Ask'
[1] 'Asked'
[2] 'Ballmer'
[8] 'Bayesian'
我想要做的只是显示频率大于或等于3的单词,如下所示: [8]'贝叶斯' 任何帮助将不胜感激。
答案 0 :(得分:1)
绝对没有理由让counts
成为一个单元格数组。只需使用它来确定那些>= 3
的计数,然后将其编入您的words
数组:
out_words = words(counts >= 3);
out_words
应包含计数为>= 3
的字词。
但是,如果您还希望显示单词旁边的频率,例如您在帖子中显示的频率,只需找到>= 3
的位置,然后将counts
和words
:
ind = counts >= 3;
freqs = [num2cell(counts(ind).') words(ind).']