とうとう自然言語処理100本ノックを初めて、10日目に達してしまいました。なかなか終わりが見えませんね。 可能な限り最後まで行いたいので、引続きやって行きます。今日から第4章の30問目からです。
30問目。 形態素解析をして結果を出力する問題です。これは、ずっとやっていたので簡単ですね。 取り敢えずテキストの読み込みをします。
text = open('neko.txt', 'r') plane_text = text.read() print(len(plane_text))
次にMeCab
import MeCab tagger = MeCab.Tagger ("-Owakati")
ここまではいいんですが、次の一文が気になります。
ただし,各形態素は表層形(surface),基本形(base),品詞(pos),品詞細分類1(pos1)をキーとするマッピング型に格納し,1文を形態素(マッピング型)のリストとして表現せよ.
マ、マッピング型。。。ググってみたら辞書型でした。 取り敢えず、表層形(surface),基本形(base),品詞(pos),品詞細分類1(pos1)を取得するために、chasen形式を選択します。
tagger = MeCab.Tagger ("-Ochasen”)
これでfor文で回せば、取り敢えず取得したいものは得られるかと。
mecab = tagger.parse(plane_text) for mecab_text in mecab.split('\n'): mecab_tab = mecab_text.split('\t') print(mecab_tab)
実行結果。
一 イチ 一 名詞-数 記号-空白 吾輩 ワガハイ 吾輩 名詞-代名詞-一般 は ハ は 助詞-係助詞 猫 ネコ 猫 名詞-一般 で デ だ 助動詞 特殊・ダ 連用形 ある アル ある 助動詞 五段・ラ行アル 基本形
難しすぎて心が折れそうですが、今日は取り敢えずここまで。
今日の結果
今日のAKBの呟きは54件でした。 要約するとこんな感じです。
#이홍기#ftisland#감사합니다""今日は週刊プレイボーイさんの撮影をしてきました☆2月ぶりの水着撮影だったので少し緊張したけど…とっても楽しかったです\(^o^)/発売日は10月17日です!是非チェックしてください✨""#ちゃこらじお第77回配信開始✨動画は第77回のオマケ!より多くの方に知ってもらいたくて初めて見ました? ロゼッタ作ったり写真撮ったりたのしかったです(´▽`)ノインスタに写真載っけますね!!""1つランクアップしてました!応援してくださってる皆さん本当にありがとうございます!最後まで楽しみながら頑張りましょう✨""トムさんゆかるんさんさほさんこみと週刊プレイボーイの撮影でした!!18歳初水着…?✨✨楽しくてあっという間だったなぁ10月17日発売ぜひチェックです!#きょうのせいちゃん#週プレ""愛用しております?" 今日から予約受付が始まっていて、明日(9月29日)締め切りです!!!お忘れなく!!岡田奈々さんに…""今日の担当は私!今の気持ちや、これからの目標なども書いたので、是非見てください??"
'楽しい': 9, '可愛い': 3, 'すごい': 2, 'かわいい': 2, 'たのしい': 2, '嬉しい': 2, '良い': 2, '優しい': 1, '懐かしい': 1, '眩しい': 1, '青い': 1, 'いい': 1, 'やばい': 1, '凄い': 1, 'ありがたい': 1, '悔しい': 1, 'やすい': 1, '詳しい': 1 'さん': 14, '月': 12, 'ちゃん': 12, '日': 11, '楽しい': 9, '今日': 8, '予約': 7, '配信': 7, '方': 6, '時': 6, '撮影': 6, '発売': 6, 'エーケービーフォーティーエイト': 5, '絶対': 5, 'お願い': 5, '私': 4, '位': 4, '人': 4, '皆さん': 4, '最後': 4, '受付': 4, 'する': 30, 'さん': 14, '月': 12, 'ちゃん': 12, '日': 11, '楽しい': 9, '見る': 9, '今日': 8, 'くださる': 8, '予約': 7, '配信': 7, '方': 6, '時': 6, '撮影': 6, '発売': 6, 'くる': 6, '頑張る': 6, 'いる': 6, 'エーケービーフォーティーエイト': 5, '絶対': 5, 'お願い': 5, '行く': 5,