※当サイトはアフィリエイト広告を利用しています

Bigquery

【サンプルコードあり】BigqueryにPythonのPandasで書き込み・読み込み

ぐぅ

ぐぅ

京大工学部▶︎京大大学院情報学研究科▶︎日系企業のITエンジニア。研究室ではAI×通信の研究も行いAIにも知見あり。友人とプログラミング初学者向けブログ「はやぶさエンジニア」を運営。ノーコードで起業し、サブスク型サービスを運営。26歳大阪在住

データ分析はPythonで行い、データの保存・管理などをクラウドサービス(GCP)であるの Bigqueryを利用する方も増えていると思います。

その際に、まず考えたいのはPythonのデータ分析ライブラリであるPandasを使うことですよね。

今回はBigqueryにPandasを使って、データをアップロードしたり、ダウンロードする方法をサンプルコードに沿って見ていきましょう。

Pandasの使い方はこちらの記事をどうぞ↓ !!!

【Pythonの便利ライブラリ】pandasの超基本講座

現役シリコンバレーエンジニアが教えるPython 3 入門

シリコンバレーで働くエンジニアの方のPython講座です。超わかりやすいので初心者の人は必見です。

受講はこちら

必要なライブラリ(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についての記事も書いていくのでぜひ読んでみてください!!

  • この記事を書いた人
ぐぅ

ぐぅ

京大工学部▶︎京大大学院情報学研究科▶︎日系企業のITエンジニア。研究室ではAI×通信の研究も行いAIにも知見あり。友人とプログラミング初学者向けブログ「はやぶさエンジニア」を運営。ノーコードで起業し、サブスク型サービスを運営。26歳大阪在住

-Bigquery
-, , , ,

© 2024 はやぶさエンジニア Powered by AFFINGER5