将bigquery数据加载到datalab中

问题描述:

我想在datalab上使用来自bigquery的公共数据,然后使用大熊猫数据框中的公共数据。我将如何去做这件事。我曾尝试3个不同的版本:将bigquery数据加载到datalab中

from google.cloud import bigquery 
client = bigquery.Client() 
QUERY = (
    'SELECT pickup_datetime, dropoff_datetime FROM `bigquery-public- 
    data.new_york.tlc_yellow_trips_20*`') --also tried without the ` and wildcard 
query = client.run_sync_query('%s LIMIT 100' % QUERY) 
query.timeout_ms = 10000 
query.run() 

错误:错误请求

import pandas as pd 

df=pd.io.gbq.read_gbq(""" 
SELECT pickup_datetime, dropoff_datetime 
FROM bigquery-public-data.new_york.tlc_yellow_trips_20* 
LIMIT 10 
""", project_id='bigquery-public-data') 

错误:我要求给访问熊猫,但是当我同意,我得到This site can’t be reached localhost refused to connect

%%bq query 
SELECT pickup_datetime, dropoff_datetime 
FROM bigquery-public-data.new_york.tlc_yellow_trips_20* 
LIMIT 10 

错误:只是不断Running

任何帮助什么我做错了,将不胜感激。

上面的代码应该经过一些小的修改,并且在您使用gcloud,安装和初始化您的电子邮件授予Google访问本地计算机权限后工作。

使用gcloud init初始化gcloud后,通过输入bq来获取项目ID。

在我上面使用client = bigquery.Client(project_id='your project id')

既然你授予访问权限,第二个代码应该工作,以及第一个代码,只需更新项目ID。如果您不使用limit函数,则可能需要很长时间才能加载,因为熊猫将数据转换为数据帧。

第三个代码也可以工作。