たぬ
こんにちは、グロースハッカーの たぬ ( @tanuhack )です。
google-cloud-bigquery
モジュールを使って BigQuery のテーブルを pandas.DataFrame
として取得する方法を紹介します。
目次
準備
モジュールのインストール
BigQuery のテーブルを pandas.DataFrame
として取得するためには、以下の3つのモジュールが必要になります。
pip install google-auth
pip install google-cloud-bigquery
pip install pyarrow
スクロールできます
モジュール | 説明 |
---|---|
google-auth | Google APIsとの認証周りで使用する。oauth2client モジュールはだいぶ前から 非推奨 なので、こちらを使用しましょう。 |
google-cloud-bigquery | BigQuery API クライアントライブラリ。Google は pandas-gbq モジュールよりこっちを使って欲しそう。 |
pyarrow | BigQuery のデータを Parquet ファイルに変換し、 pandas.DataFrame でも使えるようにする。開発環境にインストールするだけで良い。 |
インポートと認証周り
import google.auth
from google.cloud import bigquery
scopes = ['https://www.googleapis.com/auth/bigquery']
creds, project_id = google.auth.default(scopes=scopes)
client = bigquery.Client(project=project_id, credentials=creds)
プログラム
query_string = """
SELECT * FROM データセットID.テーブル名
"""
df = client.query(query_string, project=project_id).result().to_dataframe()
コメント