毎日テキストマイニング

180日間、毎日テキストマイニングをするブログです

2018/09/23【92日目】自然言語処理100本ノック、その10

とうとう自然言語処理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,

f:id:rimt:20181002135859p:plain