目次
分析の定義
- 期間:2020-01-01 ~ 2021-05-19
- NTTドコモ:「ドコモ」
- KDDI:「au」
- ソフトバンク:「ソフトバンク」
- 楽天:「楽天モバイル」
!pip install pytrends # GoogleTrendを使う
from pytrends.request import TrendReq # GoogleTrendを使う
pytrends = TrendReq(hl='ja-JP', tz=-540) # GoogleTrendを使う
import numpy as np # Numpyを使う
import pandas as pd # Pandasを使う
!pip install japanize-matplotlib # 日本語のmatplotlibを使う
import japanize_matplotlib # 日本語のmatplotlibを使う
import matplotlib.pyplot as plt # matplotlibを使う
%matplotlib inline # matplotlibをjupyterで使う
import seaborn as sns # Seabornを使う
# KWを定義する
kw_list = ['ドコモ',"ソフトバンク","au","楽天モバイル"]
# GoogleTrendにAPI連携
pytrends.build_payload(kw_list=kw_list, timeframe='2020-01-01 2021-05-31', geo='JP')
df = pytrends.interest_over_time().reset_index()
検索数はどのくらい?
- ドコモが検索数で1位で想定!
- ドコモ・au・ソフトバンクの検索数は三つ巴
- 楽天モバイルはソフトバンクの半分くらい(結構ある!?)
temp = df[["date","ドコモ","au","ソフトバンク","楽天モバイル"]].mean()
temp.plot.bar(color="red",title="検索数")
契約数と比較するとどのくらい?
各社の決算資料から抜粋した「契約数」と「検索数」を同じ軸で比較しました
※どちらも最大値(ドコモ)を「1」とし指数化しています
- ドコモと比較すると他の3社は検索数が多い
- ソフトバンクと楽天モバイルが飛ぶ抜けて検索が多い
楽天モバイルは期待(検索数)の方が契約数より上回っていそうですね
df_2 = pd.DataFrame()
df_2["検索数"] = temp
df_2["契約件数"] = [8099,6012,2541,410]
df_2 = df_2 / df_2.max()
df_2[["契約件数","検索数"]].plot.bar(color=("gray","red"),title="契約件数と検索数の比較")
推移はどうなってる?
- 日によっては3キャリア(ドコモ・au・ソフトバンク)の順位は前後する
- 楽天モバイルは2021年に入って検索数を伸ばした
- 4月に入り、各社検索は落ち着いてきている
楽天モバイルが一時期、急激に検索数を伸ばしていることが分かりますね
df[["date","ドコモ","au","ソフトバンク","楽天モバイル"]].set_index("date").plot(
color=('red','orange','gray','deeppink'), title="検索数の推移")
ソフトバンクって球団名も入っているのでは!?
先ほど「契約数」との比較で「検索数」との開きが大きかった理由として
野球球団のソフトバンクホークスが入っているのではないかという仮説が立てられます
こちらは関連検索の上位5キーワードを抽出した結果です
ドコモ・au・楽天モバイルは「料金」「プラン」「iPhone」などのワードが見られる一方…
ソフトバンクは想像通り「ソフトバンクホークス」が上位に来ています
ただ一位は「ソフトバンク 株価」と出ており、孫正義率いるソフトバンクグループ全体の株価も検索に影響していることが分かりました
kw_list = ['ドコモ',"ソフトバンク","au","楽天モバイル"]
pytrends.build_payload(kw_list=kw_list,timeframe='2021-01-01 2021-05-31,geo='JP')
df_3 = pytrends.related_queries()
dc = df_3['ドコモ']['top'].rename(columns={"query":"ドコモ関連検索","value":"検索数"}).head(5)
au = df_3['au']['top'].rename(columns={"query":"au関連検索","value":"検索数"}).head(5)
sb = df_3['ソフトバンク']['top'].rename(columns={"query":"ソフトバンク関連検索","value":"検索数"}).head(5)
rm = df_3['楽天モバイル']['top'].rename(columns={"query":"楽天モバイル関連検索","value":"検索数"}).head(5)
pd.concat([dc,au,sb,rm],axis=1)[["ドコモ関連検索","au関連検索","ソフトバンク関連検索","楽天モバイル関連検索"]]
やっぱり首都圏の検索が多いの!?
都道府県別に検索数を抽出して、各キャリアの中の最も検索数の大きい県を「1」としています
- ドコモは「新潟県」で検索が多い
- ソフトバンクは「福岡県」が多いが、やはりホークスの影響が大きい
- auは「沖縄県」で検索が多い
- 楽天モバイルは比較的「都市圏」での検索が多い
楽天モバイルは使える場所も限られているのが影響しているのか
関東・近畿・中部の首都圏で検索が多い
# 都道府県を分かりやすく並び替えるため「エクセル」を読み込んでいます
japan = pd.read_excel('/content/drive/MyDrive/Python/都道府県.xlsx',sheet_name=0)
df_4 = pytrends.interest_by_region(resolution='COUNTRY', inc_low_vol=True)
japan = pd.merge(japan, df_4, left_on='都道府県',right_on='geoName', how='left'
)[["都道府県","ドコモ","ソフトバンク","au","楽天モバイル"]].set_index("都道府県")
japan = japan / japan.max()
plt.figure(figsize=(6,12))
sns.heatmap(japan, annot=True, cmap="Reds", linewidths=.5)
まとめ
今回は3第キャリア(ドコモ・au・ソフトバンク)と楽天モバイルを、Google検索で分析してきました
4月に入って各社の検索が落ちているのは、代わりに格安料金プランをしらべているのかな?という仮説が立てられるので、次回は「ahamo・povo・LINEMO」についても調べてみたいと思います