pandas.DataFrame.to_gbq #

数据框。to_gbq ( destination_table , * , project_id = None , chunksize = None , reauth = False , if_exists = 'fail' , auth_local_webserver = True , table_schema = None , location = None , progress_bar = True , credentials = None ) [来源] #

将 DataFrame 写入 Google BigQuery 表。

自 2.2.0 版起已弃用:请改用pandas_gbq.to_gbq

该功能需要pandas-gbq 包

有关身份验证说明,请参阅如何使用 Google BigQuery 进行 身份验证指南。

参数
目的地表str

要写入的表的名称,格式为dataset.tablename.

project_id str,可选

Google BigQuery 帐户项目 ID。当环境可用时可选。

chunksize int,可选

要从数据帧插入到每个块中的行数。设置为None一次加载整个数据帧。

reauth布尔值,默认 False

强制 Google BigQuery 重新验证用户身份。如果使用多个帐户,这非常有用。

if_exists str,默认“失败”

目标表存在时的行为。值可以是以下之一:

'fail'

如果表存在,则引发 pandas_gbq.gbq.TableCreationError。

'replace'

如果表存在,则删除它,重新创建它,然后插入数据。

'append'

如果表存在,则插入数据。如果不存在则创建。

auth_local_webserver布尔值,默认 True

获取用户凭据时,使用本地 Web 服务器流程而不是控制台流程。

pandas-gbq 0.2.0 版本中的新增功能

版本 1.5.0 中更改:默认值更改为True。 Google 已弃用 “带外”(复制粘贴)流程auth_local_webserver = False

table_schema字典列表,可选

根据 DataFrame 列符合的 BigQuery 表字段列表,例如。如果没有提供 schema,它将根据 DataFrame 列的 dtypes 生成。有关可用字段名称的信息,请参阅 BigQuery API 文档。[{'name': 'col1', 'type': 'STRING'},...]

pandas-gbq 0.3.1 版本中的新增功能

位置str,可选

加载作业应运行的位置。有关可用位置的列表,请参阅BigQuery 位置文档。该位置必须与目标数据集的位置匹配。

pandas-gbq 0.5.0 版本中的新增功能

Progress_bar bool, 默认 True

使用库tqdm逐块显示上传进度条。

pandas-gbq 0.5.0 版本中的新增功能

凭证google.auth.credentials.Credentials,可选

访问 Google API 的凭据。使用此参数可以覆盖默认凭据,例如直接使用 Compute Engine google.auth.compute_engine.Credentials或服务帐号google.oauth2.service_account.Credentials

pandas-gbq 0.8.0 版本中的新增功能

也可以看看

pandas_gbq.to_gbq

这个函数在pandas-gbq库中。

read_gbq

从 Google BigQuery 读取 DataFrame。

例子

示例取自Google BigQuery 文档

>>> project_id = "my-project"
>>> table_id = 'my_dataset.my_table'
>>> df = pd.DataFrame({
...                   "my_string": ["a", "b", "c"],
...                   "my_int64": [1, 2, 3],
...                   "my_float64": [4.0, 5.0, 6.0],
...                   "my_bool1": [True, False, True],
...                   "my_bool2": [False, True, False],
...                   "my_dates": pd.date_range("now", periods=3),
...                   }
...                   )
>>> df.to_gbq(table_id, project_id=project_id)