こんばんわ!Keisuekです!
今日は, 童話を形態素分析を行い頻出頻度の上位10個の名詞を表示する!
解析対象 童話 桃太郎
頻出頻度の予想
最も多いのは桃太郎?
以下コード
**************************
from janome.tokenizer import Tokenizer
from janome.analyzer import Analyzer
from janome.tokenfilter import *
import collections as coll
if __name__ == ‘__main__’:
noun = []
verb = []
token_filters = [POSKeepFilter(‘名詞’), TokenCountFilter()]
a_noun = Analyzer(token_filters=token_filters)
token_filters_v = [POSKeepFilter(‘動詞’), TokenCountFilter()]
a_v = Analyzer(token_filters=token_filters_v)
f = open(‘momotarou.txt’)
line = f.readline()
while line:
#print(line)
for k0, v0 in a_noun.analyze(line):
noun.append(k0)
for k1,v1 in a_v.analyze(line):
verb.append(k1)
line = f.readline()
f.close
noun_collections = coll.Counter(noun)
noun_list = noun_collections.most_common()
verb_collections = coll.Counter(verb)
verb_list = verb_collections.most_common()
print(“桃太郎 名詞 出現頻度”,’\n’)
print(“名詞”,’\n’)
for i in range(10):
print(noun_list[i][0],” : “,noun_list[i][1])
print(‘\n’)
print(“桃太郎 動詞 出現頻度”,’\n’)
print(“動詞”,’\n’)
for s in range(10):
print(verb_list[s][0],” : “,verb_list[s][1])
print(‘\n’)
**************************
実行結果
桃太郎 名詞 出現頻度
名詞
桃太郎 : 11
おばあさん : 9
鬼 : 8
鬼ヶ島 : 7
おじいさん : 6
団子 : 5
イヌ : 5
桃 : 4
退治 : 4
さん : 4
桃太郎 動詞 出現頻度
動詞
行く : 6
し : 5
せ : 3
出会い : 3
付け : 3
下さい : 3
い : 2
き : 2
なり : 2
住ん : 1
[今日の達成]
・名詞頻出頻度上位10位を表示した!
・動詞頻出頻度上位10位を表示した!
[今日の未消化]
・物語の盛り上がりを検出する