如何将数据框从 Cloud Datalab 导出到 BigQuery 表?
Posted
技术标签:
【中文标题】如何将数据框从 Cloud Datalab 导出到 BigQuery 表?【英文标题】:How do I export a dataframe to a BigQuery table from Cloud Datalab? 【发布时间】:2015-12-17 13:37:42 【问题描述】:我在 Google Cloud Datalab 工作,我想将 Pandas 数据框导出为新的 BigQuery 表。我正在尝试遵循 Cloud Datalab 附带的在线帮助笔记本,但我可以看到没有导出到 BigQuery 的示例,仅导出到 Google Cloud Storage。
无论如何,我可以弄清楚如何使用正确的架构在 BigQuery 中创建表,但我不知道如何将实际数据放入表中!
这是我现在得到的:
dataset = bq.DataSet('calculations')
dataset.create(friendly_name='blah',
description='blah blah')
print 'Dataset exists', dataset.exists()
# Create the schema for the table we're about to create.
schema = bq.Schema.from_dataframe(measures[0]['data'])
print schema
print len(measures[0]['data'])
# Create a table for our results.
temptable = bq.Table('calculations.test').create(schema=schema,
overwrite=True)
# How to export the actual data to the table?
所以这个输出:
True
['type': 'STRING', 'name': u'id', 'type': 'STRING', 'name': ...
8173
显示我的数据框有 8173 行。
如果我转到 BigQuery,我会看到该表已使用正确的架构创建,但其中没有数据。
我如何实际导出那里的数据?
如果不可能,那么我可以改为导出到 Cloud Storage,尽管我已经尝试过并且遇到了同样的问题。我更愿意导出到 BigQuery。
【问题讨论】:
【参考方案1】:您需要致电:
temptable.insert_data(df)
df 是你的 Pandas 数据框。
【讨论】:
以上是关于如何将数据框从 Cloud Datalab 导出到 BigQuery 表?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 R 将 Google Cloud Datalab 输出保存到 BigQuery
如何使用R将Google Cloud Datalab输出保存到BigQuery中
从 Google Cloud Datalab 向 BigQuery 插入数据时如何调试解析错误?
如何快速从 Google Cloud Datalab 笔记本中获取数据?
如何使用Appengine和来自API的Python脚本流数据将数据流式传输到Google Cloud BigQuery?