2017-05-25 73 views
0

我想在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

任何幫助什麼我做錯了,將不勝感激。

回答

0

上面的代碼應該經過一些小的修改,並且在您使用gcloud,安裝和初始化您的電子郵件授予Google訪問本地計算機權限後工作。

使用gcloud init初始化gcloud後,通過輸入bq來獲取項目ID。

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

既然你授予訪問權限,第二個代碼應該工作,以及第一個代碼,只需更新項目ID。如果您不使用limit函數,則可能需要很長時間才能加載,因爲熊貓將數據轉換爲數據幀。

第三個代碼也可以工作。

相關問題