【问题标题】:Convert Bigquery results to Pandas Data Frame将 Bigquery 结果转换为 Pandas 数据框
【发布时间】:2017-11-22 15:48:09
【问题描述】:

以下是将 BigQuery 结果转换为 Pandas 数据框的代码。 我正在学习 Python 和 Pandas,想知道是否可以就代码的任何改进获得建议/想法?

#...code to run query, that returns 3 columns: 'date' DATE, 'currency' STRING,'rate' FLOAT...

rows, total_count, token = query.fetch_data()
currency = []
rate = []
dates = []
for row in rows:
    dates.append(row[0])
    currency.append(row[1])
    rate.append(row[2])


dict = {
'currency' : currency,
'date' : dates,
'rate' : rate
}

df2 = pd.DataFrame(dict)

df2['date'] = pd.to_datetime(df2['date'])
df2 = df2.set_index('date')

以上工作。但看起来很粗壮。有没有比上述方法更有效地做同样的事情的方法? 我尝试了诸如 sqlalchemy 之类的库,但它们不支持 BigQuery。通常我的问题是关于上面的代码和语法。

【问题讨论】:

    标签: python pandas dataframe google-bigquery


    【解决方案1】:
    【解决方案2】:

    根据适用于 Python 的 Google Cloud 客户端库中的 Using BigQuery with Pandas 页面:

    从 0.29.0 版开始,您可以使用 to_dataframe() 函数以 pandas.DataFrame 的形式检索查询结果或表行。

    另外:请参阅Migrating from pandas-gbq,了解google-cloud-bigquery BQ Python 客户端库和pandas-gbq 之间的区别。

    【讨论】:

      猜你喜欢
      • 2018-01-21
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      • 1970-01-01
      • 2019-05-14
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      相关资源
      最近更新 更多