pandas.read_gbq#
- pandas.read_gbq(query, project_id=None, index_col=None, col_order=None, reauth=False, auth_local_webserver=True, dialect=None, location=None, configuration=None, credentials=None, use_bqstorage_api=None, max_results=None, progress_bar_type=None)[源代码]#
从 Google BigQuery 加载数据。
自 2.2.0 版本弃用: 请改用
pandas_gbq.read_gbq。此函数需要 pandas-gbq package 。
有关身份验证说明,请参阅 How to authenticate with Google BigQuery 指南。
- Parameters:
- querystr
用于返回数据值的类 SQL 查询。
- project_idbool, default False
Google BigQuery 账户项目 ID。当可从环境中获取时为可选。
- index_colbool, default False
结果 DataFrame 中用于索引的结果列名。
- col_orderstr 列表;可选
用于结果 DataFrame 的所需顺序的 BigQuery 列名列表。
- reauthbool,默认 False
强制 Google BigQuery 重新验证用户。如果您使用多个帐户,这将非常有用。
- auth_local_webserverbool, default True
使用 local webserver flow 而不是 console flow 获取用户凭据.
pandas-gbq 0.2.0 版本中的新功能。
在 1.5.0 版本发生变更: 默认值已更改为
True。Google 已弃用auth_local_webserver = False的 “out of band” (copy-paste) flow 。- dialectstr,默认为 ‘legacy’
注意:默认值将在未来版本中更改为 ‘standard’。
要使用的 SQL 语法方言。值可以是以下之一:
'legacy'使用 BigQuery 的旧版 SQL 方言。有关更多信息,请参阅 BigQuery Legacy SQL Reference 。
'standard'使用 BigQuery 的标准 SQL,它符合 SQL 2011 标准。有关更多信息,请参阅 BigQuery Standard SQL Reference 。
- locationbool, default False
查询作业应运行的位置。有关可用位置列表,请参阅 BigQuery locations documentation 。位置必须与查询中使用的任何数据集的位置匹配。
pandas-gbq 版本 0.5.0 中新增。
- configurationdict, 可选
用于作业处理的查询配置参数。例如:
configuration = {‘query’: {‘useQueryCache’: False}}
有关更多信息,请参阅 BigQuery REST API Reference 。
- credentialsgoogle.auth.credentials.Credentials,可选
用于访问 Google API 的凭证。使用此参数可以覆盖默认凭证,例如直接使用 Compute Engine 的
google.auth.compute_engine.Credentials或服务账号的google.oauth2.service_account.Credentials。pandas-gbq 版本 0.8.0 中新增。
- use_bqstorage_apibool,默认 False
使用 BigQuery Storage API 快速下载查询结果,但成本会增加。要使用此 API,请先在 Cloud Console 中 enable it in the Cloud Console 。您还必须在为查询付费的项目上拥有 bigquery.readsessions.create 权限。
此功能需要
pandas-gbq包的版本为 0.10.0 或更高版本。它还需要google-cloud-bigquery-storage和fastavro包。- max_resultsint, optional
如果设置,则限制从查询结果中获取的最大行数。
- progress_bar_type可选,str
如果设置,则使用 tqdm 库在数据下载时显示进度条。安装
tqdm包以使用此功能。progress_bar_type的可能值包括:None无进度条。
'tqdm'使用
tqdm.tqdm()函数将进度条打印到sys.stderr。'tqdm_notebook'使用
tqdm.tqdm_notebook()函数将进度条显示为 Jupyter notebook 小部件。'tqdm_gui'使用
tqdm.tqdm_gui()函数将进度条显示为图形对话框。
- Returns:
- df: DataFrame
表示查询结果的 DataFrame。
参见
pandas_gbq.read_gbqpandas-gbq 库中的此函数。
DataFrame.to_gbq将 DataFrame 写入 Google BigQuery。
Examples
示例摘自 Google BigQuery documentation
>>> sql = "SELECT name FROM table_name WHERE state = 'TX' LIMIT 100;" >>> df = pd.read_gbq(sql, dialect="standard") >>> project_id = "your-project-id" >>> df = pd.read_gbq(sql, ... project_id=project_id, ... dialect="standard" ... )