質問: float(input('set level(0.0 <= level <= 1.0):'))""" print('\n%s ↓\n' %doc) ``` コードには今回の質問とは無関係な部分があるのですが、 今後利用するものなので気にしないでください。 丸投げのような質問になってしまい申し訳ありません。 ### 実行環境 OS:ubuntu 言語:python3 ### 補足情報 参考にしようとしたサイト: https://foolean.net/p/576 入力例: text.txt text.txtの中身: コーヒーメーカー 植松眞人・作 私は知人との待ち合わせのために、どうしようもない喫茶店にいた。小さな傷が付きすぎて、曇りガラスのように見えるグラスに水をなみなみとつぐようなどうしようもない喫茶店の片隅で、どうしようもない男は、さらにどうしようもない話を続けていた。 ・・・ 絞り込みのルール: 形態素解析結果のうち、特定の品詞(今回は名詞と動詞)のみを抽出して表示 出力例: コーヒー コーヒー コーヒー 名詞-一般 メーカー メーカー メーカー 名詞-一般 植松 ウエマツ 植松 名詞-固有名詞-人名-姓 眞人 マサト 眞人 名詞-固有名詞-人名-名 作 サク 作 名詞-一般 私 ワタシ 私 名詞-代名詞-一般 知人 チジン 知人 名詞-一般 待ち合わせ マチアワセ 待ち合わせ 名詞-一般 ため タメ ため 名詞-非自立-副詞可能 しよう シヨウ しよう 名詞-一般 喫茶店 キッサテン 喫茶店 名詞-一般 い イ いる 動詞-自立 一段 連用形 傷 キズ 傷 名詞-一般 付き ツキ 付く 動詞-自立 五段・カ行イ音便 連用形 すぎ スギ すぎる 動詞-非自立 一段 連用形 曇り クモリ 曇る 動詞-自立 五段・ラ行 連用形 ガラス ガラス ガラス 名詞-一般 の ノ の 助詞-連体化 よう ヨウ よう 名詞-非自立-助動詞語幹 に ニ に 助詞-副詞化 見える ミエル 見える 動詞-自立 一段 基本形 グラス グラス グラス 名詞-一般 水 ミズ 水 名詞-一般 つぐ ツグ つぐ 動詞-自立 五段・ガ行 基本形 よう ヨウ よう 名詞-非自立-助動詞語幹 しよう シヨウ しよう 名詞-一般 喫茶店 キッサテン 喫茶店 名詞-一般 片隅 カタスミ 片隅 名詞-一般 しよう シヨウ しよう 名詞-一般 男 オトコ 男 名詞-一般 しよう シヨウ しよう 名詞-一般 話 ハナシ 話 名詞-サ変接続 続け ツヅケ 続ける 動詞-自立 一段 連用形 い イ いる 動詞-非自立 一段 連用形 ### 絞り込みのルールについての詳細 テキストファイル内の文章の内容のジャンル(スポーツ、恋愛、学校など)を分類できるようにしたいため、ジャンル分けの判断材料になりそうな名詞や動詞のみを抽出することで、より正確にジャンル分けを行うことができると考えています。
回答: 基本的には`parse`結果から品詞についての情報部分を抽出し「名詞」「動詞」などの文字列一致で絞込ができます。 どのような品詞で絞り込むとよい結果が得られるかはChaSen 品詞体系 (IPA品詞体系)などを見ながら試行錯誤は必要かと思います。 また、ジャンル分けするには、単語の表記ゆれをどう扱うか(`テニス`と`庭球`)など、さらに考えないといけないことがありそうです。 ``` import MeCab inp = """ コーヒーメーカー 植松眞人・作 私は知人との待ち合わせのために、どうしようもない喫茶店にいた。小さな傷が付きすぎて、曇りガラスのように見えるグラスに水をなみなみとつぐようなどうしようもない喫茶店の片隅で、どうしようもない男は、さらにどうしようもない話を続けていた。 """ m = MeCab.Tagger('-Ochasen') chunks = m.parse(inp).splitlines() print('入力---') sels = [] # 絞り結果 for chunk in chunks: print(chunk) cols = chunk.split('\t') # ['コーヒー','コーヒー','コーヒー','名詞-一般']や['EOS']など if len(cols) >= 4: parts = cols[3].split('-') # ['名詞','一般'] if parts[0].startswith('名詞') or parts[0].startswith('動詞'): sels.append(chunk) # 絞り結果 print('絞り結果---') for sel in sels: print(sel) ``` 結果例 ``` 絞り結果--- コーヒー コーヒー コーヒー 名詞-一般 メーカー メーカー メーカー 名詞-一般 植松 ウエマツ 植松 名詞-固有名詞-人名-姓 眞人 マサト 眞人 名詞-固有名詞-人名-名 作 サク 作 名詞-接尾-一般 私 ワタシ 私 名詞-代名詞-一般 知人 チジン 知人 名詞-一般 待ち合わせ マチアワセ 待ち合わせ 名詞-一般 ため タメ ため 名詞-非自立-副詞可能 しよう シヨウ しよう 名詞-一般 喫茶店 キッサテン 喫茶店 名詞-一般 い イ いる 動詞-自立 一段 連用形 傷 キズ 傷 名詞-一般 付き ツキ 付く 動詞-自立 五段・カ行イ音便 連用形 すぎ スギ すぎる 動詞-非自立 一段 連用形 曇り クモリ 曇る 動詞-自立 五段・ラ行 連用形 ガラス ガラス ガラス 名詞-一般 よう ヨウ よう 名詞-非自立-助動詞語幹 見える ミエル 見える 動詞-自立 一段 基本形 グラス グラス グラス 名詞-一般 水 ミズ 水 名詞-一般 つぐ ツグ つぐ 動詞-自立 五段・ガ行 基本形 よう ヨウ よう 名詞-非自立-助動詞語幹 しよう シヨウ しよう 名詞-一般 喫茶店 キッサテン 喫茶店 名詞-一般 片隅 カタスミ 片隅 名詞-一般 しよう シヨウ しよう 名詞-一般 男 オトコ 男 名詞-一般 しよう シヨウ しよう 名詞-一般 話 ハナシ 話 名詞-サ変接続 続け ツヅケ 続ける 動詞-自立 一段 連用形 い イ いる 動詞-非自立 一段 連用形 ```