df2gspread
で、
結果を
前提
OS 、
OS
% sw_vers ProductName: Mac OS X ProductVersion: 10.12.6 BuildVersion: 16G1114
Python
% python3 -V Python 3.6.2
参考
必要な ライブラリの インストール
df2gspread
と、plotly
を
python3 -m pip install df2gspread --user python3 -m pip install plotly --user
手順
以下手順を
Google Analytics から
データを エクスポート df2gspread で
データを DataFrame と して 取り込む plotly で
可視化
Google Analytics から データを エクスポート
Google Analytics - Google スプレッドシート アドオン を
設定は
df2gspread で データを DataFrame と して 取り込む
df2gspread で
start_cell のA15
は、A15
に
スプレッドシートには、
from oauth2client.service_account import ServiceAccountCredentials def download_as_df(): from df2gspread import gspread2df as g2d # key_file 以下の指定方法だと、notebook と同じディレクトリにあるキーファイルを取得しています。 key_file = "spreadsheet_api_key.json" scope = ['https://spreadsheets.google.com/feeds'] credentials = ServiceAccountCredentials.from_json_keyfile_name(key_file, scope) # 1brCpWvk2uofc3MEt-ASb2cuZ-u8Zmx-ICxSTltlbVBQ はスプレッドシートのID なのでそれぞれ取得対象のスプレッドシートで変わります。 df = g2d.download("1cMLBDPbPkoYYX9tXIlHunAA0mt7eBEq2HaHTAxVszh4", wks_name="日次レポート", col_names=True, row_names=False, credentials=credentials, start_cell = 'A15') df = df.sort_values(by='ga:date') return df
download_as_df
を
import pandas as pd df = download_as_df() # datetime に変換する df["ga:date"] = pd.to_datetime(df["ga:date"]) # ga:date を index として設定する df.index = df["ga:date"] # グラフ描画に不要なカラムの削除 df = df.drop("ga:date", axis=1) df = df.drop("ga:avgSessionDuration", axis=1) df = df.drop("ga:pageviewsPerSession", axis=1) df = df.drop("ga:bounceRate", axis=1) # 2016-10-01 から 30日間でデータを絞り込む span = pd.date_range('2016-10-01', periods=30) df = df[df.index.isin(span)]
plotly で 可視化
import plotly plotly.offline.init_notebook_mode(connected=False) plotly.offline.iplot([{ 'x': df.index, 'y': df[col], 'name': col } for col in df.columns], filename='ga_daily_reports', show_link=False, config={"displaylogo":False, "modeBarButtonsToRemove":["sendDataToCloud"]})
まとめ
plotly で
スプレッドシート > Pandas DataFrame > plotly への
変換は 容易に できます。 スプレッドシート から
Pandas DataFrame に 変換後は、 多少データの 加工が 必要でした。 Google Analytics 上で
可視化が 可能な ものは、 Google Analytics 上で 閲覧し、 もう 少し込み 入った 可視化、 他の データソースとの 統合は、 Data Studio を 使い、 込み 入った データ処理が 必要な 場合は、 Python 上での 可視化なのかなと 思いました。
以上です。
コメント