Generating WordCloud in Python
食べログレビュー形態素解析と

WordCloudによる可視化

2020.03.02
Ayaka Honda
Agenda
● はじめに

● データ分析の目的

● 分析工程解説

● 考察と今後の展開

● 質疑応答

はじめに
● 形態素解析とは?


「自然言語」を形態素(意味を持つ表現要素の最小単位)

 にまで分割する技術のこと



例) 『私はコーヒーを飲みます』





私/は/コーヒー/を/飲み/ます

  代名詞 副助詞  名詞   助詞 動詞  助動詞 





今回使用したjanomeは標準ライブラリではないので予めイントールしておく 



!pip install janome   参考: Welcome to janome's documentation! 

https://mocobeta.github.io/janome/
はじめに
● WordCloudとは?



単語の出現頻度を可視化出来るアプリケーション。

Pythonではmatplotlibを使用して可視化出来るので

以下のライブラリをインポートしておく



from wordcloud import WordCloud
import matplotlib.pyplot as plt




参考: WordCloud for Python documentation 

http://amueller.github.io/word_cloud/index.html
データ分析の目的
・What
コーヒー専門店の口コミ頻出単語の可視化




・Why
自店の口コミチェックの効率化




・How
1.食べログサイト内の口コミをスクレイピング

2.口コミの形態素解析と単語帳の作成

3.WordCloudで可視化





分析工程解説
1. 食べログサイトから口コミを取得

<取得条件>

・東京都内

・業種ジャンルの1番目が「コーヒー専門店」

・評価点数 3.0以上

・口コミ取得件数は各店1ページ分(最大20件)



ソースコードはGitHubで公開中







参考:食べログ/COFFEE VALLEY (池袋) 

https://tabelog.com/tokyo/A1305/A130501/13175074/



【Python】ラーメンガチ勢によるガチ勢のための食べログスクレイピング   
https://qiita.com/toshiyuki_tsutsui/items/f143946944a428ed105b

分析工程解説
<取得結果>



分析工程解説
2. 口コミの正規化と形態素解析、単語帳の作成



<正規化条件>

・UnicodeをNFKC(デフォルト)で正規化

・( )を削除

・英字は小文字にする



<単語帳格納条件>

・名詞が連続する場合は複合名詞にする

・名詞・形容詞・副詞のみを取得する

・一文字しか無いひらがなとカタカナと英数字は削除









参考: 【Python】自然言語処理でラーメン屋を分類してみる 

 https://qiita.com/naotaka1128/items/87d717961bd0c34e7a64

分析工程解説
<結果>









ソースコードはGitHubで公開中
分析工程解説






3. 作成した単語リストを出現頻度に応じて可視化











分析工程解説






考察と今後の展開
1.個人店の口コミはほぼ予想通りの内容


・Why? 

→1ページ目に表示される口コミ常連者は前情報を念入りに調べている為、頻出単
語が同じものに偏りやすい

〈TRY〉

・1ページ分だけでなく、全ての口コミを取得する

・口コミ常連者を除外する

・地名や店名などすでに分かっている情報は除外する

・単語をポジティブ、ネガティブで分ける



2. チェーン店は立地によって口コミが変わる


→ 店舗ごとのプロモーションやメニュー変更のアイデアに活用



Thank you !
今後の勉強過程はこちらでチェック :)

http://stillakeenbean.com/sliceofthepy/


Generating word clouds in python