目次
分析の定義
- 期間:2016-05-29 ~ 2021-05-16
- 検索:下記検索キーワード
あえて正式名称にしているのは、別の検索と明確に区別するためです
※「巨人」は「進撃の巨人」と、「阪神」は「阪神百貨店」と混同してしまうため
- 読売ジャイアンツ
- 東京ヤクルトスワローズ
- 横浜DeNAベイスターズ
- 中日ドラゴンズ
- 阪神タイガース
- 広島東洋カープ
- 北海道日本ハムファイターズ
- 東北楽天ゴールデンイーグルス
- 埼玉西武ライオンズ
- 千葉ロッテマリーンズ
- オリックス・バファローズ
- 福岡ソフトバンクホークス
!pip install pytrends
from pytrends.request import TrendReq
pytrends = TrendReq(hl='ja-JP', tz=-540)
import numpy as np
import pandas as pd
!pip install japanize-matplotlib
import japanize_matplotlib
%matplotlib inline
import datetime
import seaborn as sns
!pip install japanmap
from japanmap import picture
import matplotlib.pyplot as plt
from pylab import rcParams
検索数を比較してみる
「巨人」「ヤクルト」「阪神」の検索が多いことが分かります
ただし上記で説明した通り、このデータだけでは十分ではありません
「東北楽天ゴールデンイーグルス」は「楽天」と呼ばれているでしょうし、他の球団も独自の呼び方があるはずです
今回は「地域」をメインにした分析なので、キーワードの詳細を定義することはしません
kw_list = ['東京ヤクルトスワローズ','横浜DeNAベイスターズ','中日ドラゴンズ',
'阪神タイガース','広島東洋カープ','北海道日本ハムファイターズ','東北楽天ゴールデンイーグルス',
'埼玉西武ライオンズ','千葉ロッテマリーンズ','オリックス・バファローズ','福岡ソフトバンクホークス']
kw_list_1 = ['読売ジャイアンツ']
pytrends.build_payload(kw_list=kw_list_1,geo='JP')
df = pytrends.interest_by_region(resolution='COUNTRY', inc_low_vol=True)
for item in kw_list:
kw = [item]
pytrends.build_payload(kw_list=kw,geo='JP')
df = df.merge(pytrends.interest_by_region(resolution='COUNTRY', inc_low_vol=True), how='left', on='geoName')
japan = pd.read_excel('/content/drive/MyDrive/Python/都道府県.xlsx',sheet_name=0)
df = pd.merge(japan, df, left_on='都道府県',right_on='geoName', how='left').set_index('都道府県')
df.sum().sort_values().plot.barh(color=('darkred','silver','dodgerblue','red','navy','gold','deepskyblue','dimgray','blue','yellow','green','orange'))
都道府県ごとのキーワード分析
「球団名」x「都道府県」の検索結果をヒートマップで抽出してみました
球団ごとに最大値が「1」となるように分布しています
読売ジャイアンツのスコアが高くなっていることから、
巨人はどの都道府県でも検索されている(人気な)球団であることが分かります
一方で地方球団はその地域でのみ検索がされています(※e+0となっているのが最大値です)
plt.figure(figsize=(6,12))
sns.heatmap(df,annot=True, cmap='Reds', linewidths=.5)
各地方で一番検索されている球団は?
最も目立つオレンジ「巨人」で各地に広がっています
しかし東京都に関しては「ヤクルト」の緑が塗られています
広島県は「カープ」の赤、名古屋は「ドラゴンズ」の水色と、特定の都道府県で人気の球団があるのが分かります
また「阪神」と「オリックス」の近畿地方の取り合いも面白いですよね
area = df.idxmax(axis=1)
area = area.replace({'阪神タイガース':'yellow',
'読売ジャイアンツ':'orange',
'東京ヤクルトスワローズ':'green',
'横浜DeNAベイスターズ':'blue',
'中日ドラゴンズ':'deepskyblue',
'広島東洋カープ':'red',
'北海道日本ハムファイターズ':'dodgerblue',
'東北楽天ゴールデンイーグルス':'darkred',
'埼玉西武ライオンズ':'navy',
'千葉ロッテマリーンズ':'silver',
'オリックス・バファローズ':'dimgray',
'福岡ソフトバンクホークス':'gold'})
plt.imshow(picture(area))
まとめ
今回は「プロ野球球団」をGoogle検索で分析してみました
都道府県別の検索数が分かるので非常に便利ですね