データ分析はPythonで行い、データの保存・管理などをクラウドサービス(GCP)であるの Bigqueryを利用する方も増えていると思います。
その際に、まず考えたいのはPythonのデータ分析ライブラリであるPandasを使うことですよね。
今回はBigqueryにPandasを使って、データをアップロードしたり、ダウンロードする方法をサンプルコードに沿って見ていきましょう。
Pandasの使い方はこちらの記事をどうぞ↓ !!!
必要なライブラリ(pandas-gbq)のインストール
ライブラリとは、何かをするためのパッケージやセットのことです。
絵を描くときは絵の具セット、怪我を直すには応急セットが必要ですよね!!
それと同じでPandasを利用してBigqueryとやり取りするためには"pandas-gbq"というライブラリが必要です
インストール手順
ではインストール手順を紹介していきます!
pipのインストール
Python周辺のライブラリをインストールするためにはpipというツールが必要ですので
Macの人は、こちらを参考にして、Windowsの人はこちらを参考にしてpipを入れてください!!
pandas-gbqのインストール
pandas-gbqやその他必要なものをインストールしましょう!
pip install pandas pandas-gbq
Bigqueryへ書き込み
さて、データをBigqueryへ書き込みしていきます。
こちらがサンプルコードになります。
to_gbqという関数を使えば1発です!!
import pandas as pd # pandasのインポート(インポートとはライブラリを使うよ!と宣伝することです)
# 適当なデータフレームを作成します(df)
df = pd.DataFrame({"A":[1,2,3],"B":[4,5,6]})
# to_gbqという関数を使うだけ!!
# データセット名やテーブル名、プロジェクト名はGCPやBigqueryの情報なので各自で入れるものです!
project_id = "プロジェクト名"
table_id = "格納先のデータセット名.格納先のテーブル名"
df.to_gbq(table_id, project_id)
GCPの Bigqueryでの書き込みのための認証ポップアップが出てくる人は許可を押していってください(画像は参考までに)
Python 3.8マスター講座!!0から文法、標準ライブラリ、numpy, pandas, SQLAlchemy
詳しくnumpyやpandasなどのライブラリを体系的に学びたい人はぜひこの講座を受けてみてください。
ダウンロード・読み込み
データをBigqueryから読み込んでデータフレームに格納します。
さてサンプルコードをみていきましょう
import pandas as pd
# read_gbqを使います
# クエリとプロジェクトidを引数にする
# dialect='standard'とすることで標準SQLを使用できます
project_id = 'プロジェクト名'
query = 'SELECT * FROM `読み込み先のテーブル名`' # このクエリは全部取ってくるという命令です
df = pd.read_gbq(query, project_id, dialect='standard')
これでデータの読み込みができたはずです!!
一行でかけてしまうのがPython、Pandasの凄さですね!!
クエリ(query)を変更するとデータの一部だけをダウンロードしたり、整形できたりします!
クエリはSQLという言語で書きますのでわからない人は是非下の記事を読んでみてくださいね!
まとめ
今回はPandasでBigqueryへデータの書き込み・読み込みをしてみました。
GCPのBigqueryに接続するためのライブラリがたくさん用意してあるので、必要なライブラリをインストールして使いこなしましょう!!
また、他のAWSやGCPについての記事も書いていくのでぜひ読んでみてください!!