使用 Pandas/Python 获取 Google BigQuery 数据的 JSON 格式

Posted

技术标签:

【中文标题】使用 Pandas/Python 获取 Google BigQuery 数据的 JSON 格式【英文标题】:Get JSON format for Google BigQuery Data using Pandas/Python 【发布时间】:2019-09-26 18:36:08 【问题描述】:

我正在尝试使用 Pandas/Python 客户端界面查询 Google BigQuery。我在这里学习教程:https://cloud.google.com/bigquery/docs/bigquery-storage-python-pandas。我能够让它工作,但我想以 JSON 格式查询数据,可以直接从 WebUI 下载(见截图)。有没有办法将数据下载为如图所示的 JSON 结构而不是将其转换为数据框对象?

我想该命令将位于教程中这部分代码的某个位置:

dataframe = (
    bqclient.query(query_string)
    .result()
    .to_dataframe(bqstorage_client=bqstorageclient)
)

【问题讨论】:

不完全符合您的要求,但将 DataFrame 转换为 JSON 也很简单pandas.pydata.org/pandas-docs/stable/reference/api/… 【参考方案1】:

转换为dataframe后只需添加.to_json(orient='records')调用即可:

json_data = bqclient.query(query_string).result().to_dataframe(bqstorage_client=bqstorageclient).to_json(orient='records')

pandas docs

【讨论】:

感谢您将我指向“orient”参数。这解决了我的问题!

以上是关于使用 Pandas/Python 获取 Google BigQuery 数据的 JSON 格式的主要内容,如果未能解决你的问题,请参考以下文章

获取基于另一列pandas python的分组值的百分比

按连续计数 Pandas Python 分组 [关闭]

数据框中所有可能的列组合 -pandas/python

在pandas python中将指数或科学数转换为整数

根据星期时间统计日期总量,绘制matplotlib,pandas,Python

根据星期时间统计日期总量,绘制matplotlib,pandas,Python