Python初心者はWordCloudで遊んでみたい1


始めたきっかけ

pythonの勉強をしたくて、基礎的な勉強をしていたけどつまらない!基礎は必要だけどやっぱり何かを作らないと成長してるという実感が湧かず、pythonで出来る事を探していたらこんな記事を見つけた。
米津玄師の歌詞をWordCloudで可視化してみた。
なんだこれ、めちゃくちゃ面白そう!と思い、これをやってみる。

いきなり全部をやろうとすると、どこかで躓いて辞めそうだから初学者は黙って一歩ずつやってく。
初めは形態素解析についてを勉強し、その後にWordCloudをやっていくつもり。

最終目標は、入力で好きなアーティストの歌詞でできるようにしたい。
技術云々の前に、そもそもそんなことできないよ〜って言われたら言われたでしょうがないけど、とりあえずやるだけやってみる。

参考にさせていただいているサイトはこちら↓
https://note.nkmk.me/python-janome-tutorial/

環境

Google Colaboratory

※初めてGoogle Colaboratoryを使う方は、こちらを参考にマウントしてみてください。
Google Colaboratoryでファイルを読み込む方法

形態素解析とは

pythonで形態素解析をする方法は、MeCabとjanomeの2つがあるらしい(他にもあるかも)今回はjanomeでやっていく。
janomeとMeCabの詳しい違い↓
JanomeとMecabを使って形態素解析してみる

インストール

!pip install janome

とりあえず動作確認

from janome.tokenizer import Tokenizer

s = "すもももももももものうち"

# 形態素解析オブジェクトの生成
t = Tokenizer()

for token in t.tokenize(s):
    print(token)

実行結果

すもも   名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも  名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも  名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち  名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ

.txtを読み込んで出力できるかやってみる

※sapmle.txtには桃太郎を書き込んであります。

from janome.tokenizer import Tokenizer

f = open("sample.txt", "r", encoding="UTF-8")
text = f.read()

t = Tokenizer()

for token in t.tokenize(text):
    print(token)

実行結果

むかし   名詞,副詞可能,*,*,*,*,むかし,ムカシ,ムカシ
むかし   名詞,副詞可能,*,*,*,*,むかし,ムカシ,ムカシ
、 記号,読点,*,*,*,*,、,、,、
ある  連体詞,*,*,*,*,*,ある,アル,アル
ところ   名詞,非自立,副詞可能,*,*,*,ところ,トコロ,トコロ
.
.
.

まとめ

今回は初めてのjanomeだったから、どんなものかを把握するために軽くしかやらなかったが、次回は不要な単語の消去、使われた単語の回数を見るあたりをやっていきたい。