Text Analytics Toolboxで品詞​でフィルタしたものを​、Token化するに​はどうしたら良いでし​ょうか?

Text Analytics Toolboxを用いて、
に記載されているような、分類を実施しようとしていますが、
tokenizedDocument にてトークン化されたものを1トークン毎にtokenDetailsにて品詞分解し
特定の品詞のみにしたいのですが、TokenDetailsしたものをまたトークン化するやり方がわからず苦慮しております。
TokenDetailsで抽出したものを、TokenizedDocumentにて再びトークン化すると1Wordごとのトークンとなってしまい、
最初に文章をtokenizedDocumentにてトークン化した、.Vocabularyプロパティのstring配列にできません。
なにかいいやり方がありましたら御教授いただきたく、よろしくお願いいたします。

 采纳的回答

ご回答が遅くなり申し訳ございません。
論理演算およびjoin関数を用いた、以下のような処理ではご所望の内容になりますでしょうか?
%% 解析用データの読込み(「吾輩は猫である」を読み込んでいます)
url = "https://www.aozora.gr.jp/cards/000148/files/789_14547.html";
options = weboptions('CharacterEncoding','Shift_JIS');
code = webread(url,options);
textData = extractHTMLText(code);
textData = string(split(textData,newline));
idx = textData == "";
textData(idx) = [];
%% トークン化
documents = tokenizedDocument(textData);
%% 品詞情報の取得
tdetails = tokenDetails(documents);
head(tdetails)
%% 名詞の抽出
idx = tdetails.PartOfSpeech == "noun";
%% 再びトークン化
tokens = tdetails(idx,:);
for ii = 1:max(tokens.DocumentNumber)
try
str(ii,:) = join(tokens.Token(tokens.DocumentNumber == ii));
end
end
documents = tokenizedDocument(str)
documents.Vocabulary

1 个评论

ありがとうございました。
無事に意図したものができました。

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Language Support 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!