将 Numpy 矩阵从 DataLab 上传到 BigQuery
Posted
技术标签:
【中文标题】将 Numpy 矩阵从 DataLab 上传到 BigQuery【英文标题】:Upload Numpy matrix from DataLab to BigQuery 【发布时间】:2018-01-10 09:26:45 【问题描述】:我在 DataLab 中有一个 numpy 矩阵作为输出。如何在 BigQuery 中将其作为表获取?
到目前为止,我似乎需要将其转换为 JSON,保存在存储中并从那里上传。 有没有更简单的方法来完成这项工作?
谢谢
【问题讨论】:
你的矩阵结构如何? N×N?密集还是稀疏?尺寸是多少?您可以访问 python 云 api 吗?您不需要将其保存到存储中,您可以使用stream 或upload from file。实际上后者被pandas 使用:它将numpy 向量转换为Jsons 并使用StringIO
缓冲区将数据上传到BQ。
【参考方案1】:
使用pandas
包找到了一个简单的解决方案。
需要将数据转换为数据框,然后使用to_gbq
方法。
Here 是文档
唯一的缺点是记录在 BigQuery 的 streaming buffer
中保留数小时甚至数天,我不确定它会产生什么影响。
【讨论】:
以上是关于将 Numpy 矩阵从 DataLab 上传到 BigQuery的主要内容,如果未能解决你的问题,请参考以下文章