毎日テキストマイニング

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

2018/6/26【4日目】Word-cloudを日本語に対応させる

昨日からの続きです。Word-cloudで日本語を表示させるには、日本語フォントを指定しないとダメなようです。 日本語対応を早速やっていきましょう。ただその前に、今日の結果を報告しておきます。

今日の結果

今日のAKBメンバーによる呟きは43件でした。 このデータを使って画像を作っていきましょう。

Word-cloudに日本語を対応させる

ネットでググった情報によるとmacOSには日本語フォントが入ってるので、プログラム上でそれを指定すれば良いとのこと。以下を昨日のコードに追加。

fpath = "/Library/Fonts/ヒラギノ角ゴ Pro W3.otf"

これでコードを実行してみます。エラーが出ますね。

 self.font = core.getfont(font, size, index, encoding)
OSError: cannot open resource

OSError: cannot open resourceなので、おそらく指定したパスが間違っていそう。ファイルを探すのはfindコマンドらしいので、早速使って検索。

$ find /Library/Fonts/
(中略)
/Library/Fonts//Trebuchet MS.ttf
/Library/Fonts//Verdana Bold Italic.ttf
/Library/Fonts//Verdana Bold.ttf
/Library/Fonts//Verdana Italic.ttf
/Library/Fonts//Verdana.ttf
/Library/Fonts//Waseem.ttc
/Library/Fonts//Webdings.ttf
/Library/Fonts//Wingdings 2.ttf
/Library/Fonts//Wingdings 3.ttf
/Library/Fonts//Wingdings.ttf
/Library/Fonts//Zapfino.ttf
/Library/Fonts//ヒラギノ丸ゴ ProN W4.ttc

日本語フォントが1個だけあるようですね。これを再設定してみます。

fpath = "/Library/Fonts//ヒラギノ丸ゴ ProN W4.ttc"

これで再び実行。 f:id:rimt:20180627003257p:plain 無事画像ができました。

しかし、今のままですと、httpsとcoとTueとJunが目立ちますし、単語の数が多すぎてどれが大事なのかわかりません。 これらの邪魔な文字を、正規表現を使って消していきます。Atomの検索で以下の邪魔なテキスト群を半角スペースへ置換。

https://.*$
Tue Jun 26 .*
1011.*

うまく消えました(「まし」「ます」と邪魔ですね。これも正規表現で消しておきます)。 f:id:rimt:20180627004507p:plain

word-cloud内の項目量を減らすには、以下のパラメーターの数値を下げれば良さそうです

max_words=2000,

100くらいにしてみましょう。 f:id:rimt:20180627010219p:plain できました。いい感じですね。 下記の言葉がよく呟かれたようです(ニュースで確認しますと、「村山チーム4 「手をつなぎながら」公演を配信!」なのだそうです。全然分析をできていない笑)。

  • 公演
  • 撮影
  • 村山
  • チーム

これで1つの図が完成しましたので、明日は違う図を作ってみたいと思います。

今回身につけた知識

  • findコマンド
  • mac上のfontの置き場所
  • 正規表現でのhttps://の消し方
  • word-cloud内の項目の減らし方