以前、Pythonを使ってBigQueryからデータを取得する方法として、Google Cloudのクライアントを使用する方法をご紹介しました。
※過去の記事はこちらを参照ください。
今回は別の方法として「Pandasの拡張ライブラリを使用する方法」をご紹介します。
pandas-gbq をインストール
以下のコマンドで「pandas-gbq」をインストールします。
pip install pandas-gbq
Googleへの認証
今回も、pydata-google-auth を使ってGoogleの認証キーをオブジェクトとして取得します。
pydata-google-auth をインストールする場合は、以下のコマンドから↓↓↓
Anacondaの場合
conda install -c conda-forge pydata-google-auth
pipの場合
pip install pydata-google-auth
Jupyter Notebookのセルに以下のコードを入力して実行します。
import pydata_google_auth
credentials = pydata_google_auth.get_user_credentials(
[‘https://www.googleapis.com/auth/bigquery‘],
)
もし認証用のポップアップが表示されたら、Googleアカウントを選択し、画面の指示にしたがって操作していくと、最後に認証キーが発行されます。
認証キーはプログラム内の変数「credentials」に格納されます。
Pandasの拡張ライブラリを使用する
Googleの認証が完了したら、あとは以下のコードを実行するだけでBigQuery上のデータが取得できてしまいます。
import pandas as pd
project_id = 'プロジェクト名'
query = 'SELECT * FROM データセット名.テーブル名 WHERE target_day = "2024-02-17" LIMIT 10'
df = pd.read_gbq(query, project_id, dialect='standard', credentials=credentials)
※プロジェクト名、データセット名、テーブル名はご自身の環境に合わせて適宜変更してください
▼ BigQuery上に保存している 2024/2/17 の気象データを10行だけ取得
たった、数行で直接DataFrameに読み込むことができちゃいました!
BigQueryからCSVとしてデータをダウンロードして、、、という一手間を省くことができます。
まとめ
- pydata-google-auth を使えば、自身の持つGoogleアカウント情報と紐づいた認証キーをオブジェクトとして取得できる!
- Pandasの拡張ライブラリを使用すれば、簡単にBigQueryからデータ取得ができる!
API ARIMA AutoML Bard BigQuery Bing ChatGPT Cloud Endpoints Cloud Storage DWH EBPM GAS Generative AI Google Apps Script Google Cloud Google Form Google Workspace IT組織 Outlook PaLM PDF Python ReportLab selenium Statsmodels STL VertexAI Vertex Forecast スクラッチ セミナー ソトミル トレンド分析 トレーニング バッチ予測 世界は女性とデジタルが救う 女性活躍 技術 時系列データ分析 業務効率化 機械学習 特徴量エンジニアリング 生成AI 自動化 評価指標 需要予測