我正在尝试从标记化文档中提取所有名词并选择前 3 个。它不起作用,我怀疑是因为我没有正确使用 strcmp 命令。这是我的代码
sT2 = tokenizedDocument([
"a strongly worded collection of words and letters"
"another collection of words"]);
tD = tokenizedDocument(sT2);
tD = addPartOfSpeechDetails(tD);
tdetails = tokenDetails(tD);
td7 = table2cell(tdetails(:,7)); % PARTS OF SPEECH
siztd7 = size(td7);
cc = 1;
for ii = 1:siztd7
if strcmp(td7(ii,1), 'noun') == 1
tDNoun(cc) = tdetails(1,:);
cc = cc + 1;
end
end
bag = bagOfWords(tDNoun);
tb100 = topkwords(bag,3)
该变量
tdetails
是 MATLAB ,您可以使用索引table
直接从中提取名词,如下所示:table
第一个下标将
table
变量PartOfSpeech
与“名词”匹配,第二个下标仅提取table
变量“Token”。使用括号索引,即{}
提取数据 - 在本例中为string
单词数组。然后可以直接使用它
bagOfWords
,尽管我们必须使用transpose
数组nouns
来获取该函数所需的行向量: