2019-07-17今回は、Twitterから抽出した投稿を使ってWordcloudを作成する方法について解説します。Wordcloudというのは、データビジュアライズの方法の一つで、ある文の中に頻出する語句を大きさや形を変えて表示する手法です。完成例は、下のツイートの画像みたいになります。今日のお仕事は自由にプレゼンを作って良い日だったので、その資料として、形態素解析からのWordCloudにチャレンジしてみました!結構簡単にできて面白かった!形態素解析とかでほかにもいろいろ遊んでみたいなぁ。2019年7月10日こちらのWordcloudですが、Pythonのライブラリで非常に簡単に作成することができました。論文やレポートのちょっとした遊びとかにも使いやすいかもしれません。皆さんもやってみてください。自然言語解析で名詞だけを取り出すWordcloudを作成する作成したWordcloudが文字化けする理由まとめWordcloud作成環境と手順まずは使用したPythonのバージョンと、インストールしたライブラリからまとめておきます。いうコマンドを打つと、必要なライブラリをいっぺんにインストールできます。wordcloud==1.5.0Wordcloudを作成するまでの大まかな手順は次の3ステップです。1.TwitterAPIで投稿を抽出する2.自然言語解析で名詞のみ取り出し、半角スペースで区切られたtxtファイルにする3.作成したtxtファイルをWordcloudライブラリにつっこむあるみたったこれだけ!驚きの簡単さですね!では、次の項から各コードについて解説していきますね!Twitterから特定のキーワードを含む投稿を抽出まずは、TwitterからWordcloudを作成するための素材を集めましょう。今回は自分の投稿を取得してWordcloud化します。一応コードは貼っておきますが、TwitterAPIを使って自分の投稿を取得する方法については、もっと詳細にまとめた記事があります。詳しくはこちらの記事を参考にしてみてください。いうファイルに抽出しました。次は、こちらのテキストファイルに形態素解析をかけて、名詞だけを抽出していきます。使うのはおなじみのMecabです。f.write(line)今回はMeCabの使い方については細かくは解説しません。文字列の保存されたtxtファイルを読み取って、名詞だけを半角スペース区切りで並べた新しいtxtファイルを生成するプログラムです。Wordcloudを作成するさてさてようやく本題。半角スペース区切りで単語が保存されたtxtファイルを使って、Wordcloudを作成します。height=600)wordcloud.generate(text)wordcloud.to_file('word.png')とは言ってもコードはたったこれだけなんですよ。!コードを実行してWordcloudを作成!!・・・文字化けしてね??作成したWordcloudが文字化けする理由どうやら、Wordcloudライブラリの標準のフォントは、日本語表示に対応していないそう。あるみ日本語の弊害をひしひしと感じる解決法は、Wordcloudのフォントに、日本語対応のフォントを指定することです。日本語に対応してればなんでもいいんですが、僕はここからipag.ttfというファイルをダウンロードしてきました。ipag.ttfをPython実行ファイルと同じディレクトリに置いたら、先ほどのコードを以下のように修正しましょう。font_path="./ipag.ttf")フォントを追記しました。これでこんどこそWordcloudが作成できました。まとめこんな感じでサクサクっとWordcloudが完成しました。いう遊びが簡単にできるのはPythonのいいところですねー。皆さんもやってみてください。コメントをキャンセルメールアドレスが公開されることはありません。TwitterAPIでツイートを全件取得する方法【Python】WiMAXは使うな?思わぬ落とし穴で一か月使えなくなった話。千葉県を中心にボランティア活動や勉強会などを行っています。好きな言語はC#とPythonとC++です。関係の技術が好きです。XamarinとかTypeScriptも触ってます。質問・相談・お仕事のご依頼は、Twitterまたは問い合わせフォームまで。今月の人気記事1一年間プログラミングを独学した過程を振り返ってわかったこと。