BatchDataFrameOperations 类

用于批处理记录操作的面向数据帧的包装器。

提供createupdatedelete接受pandas.DataFrame / pandas.Series输入并将其转换为标准听写,然后再排队批处理。 这样,数据科学调用方就可以直接将数据帧馈送到批处理中,而无需手动转换。

通过 batch.dataframe 访问。

示例:


   import pandas as pd

   batch = client.batch.new()
   df = pd.DataFrame([
       {"name": "Contoso", "telephone1": "555-0100"},
       {"name": "Fabrikam", "telephone1": "555-0200"},
   ])
   batch.dataframe.create("account", df)
   result = batch.execute()

构造函数

BatchDataFrameOperations(batch: _BatchContext)

参数

名称 说明
batch
必需

方法

create

排队记录从 pandas 数据帧创建。

每行都成为记录。 所有行都捆绑在单个 CreateMultiple 批处理项(批处理中的一个 HTTP 请求)。

示例:


   df = pd.DataFrame([{"name": "Contoso"}, {"name": "Fabrikam"}])
   batch.dataframe.create("account", df)
delete

排队记录会从 pandas 系列 GUID 中删除。

示例:


   ids_series = pd.Series(["guid-1", "guid-2", "guid-3"])
   batch.dataframe.delete("account", ids_series)
update

从 pandas 数据帧排队记录更新。

每行表示更新。 指定 id_column 包含记录 GUID 的列。

示例:


   df = pd.DataFrame([
       {"accountid": "guid-1", "telephone1": "555-0100"},
       {"accountid": "guid-2", "telephone1": "555-0200"},
   ])
   batch.dataframe.update("account", df, id_column="accountid")

create

排队记录从 pandas 数据帧创建。

每行都成为记录。 所有行都捆绑在单个 CreateMultiple 批处理项(批处理中的一个 HTTP 请求)。

示例:


   df = pd.DataFrame([{"name": "Contoso"}, {"name": "Fabrikam"}])
   batch.dataframe.create("account", df)
create(table: str, records: DataFrame) -> None

参数

名称 说明
table
必需
str

表架构名称(例如 "account")。

records
必需

数据帧,其中每一行都是要创建的记录。

例外

类型 说明

如果 records 不是 pandas 数据帧,则为 。

如果 records 为空或任何行没有非 null 值。

delete

排队记录会从 pandas 系列 GUID 中删除。

示例:


   ids_series = pd.Series(["guid-1", "guid-2", "guid-3"])
   batch.dataframe.delete("account", ids_series)
delete(table: str, ids: Series, use_bulk_delete: bool = True) -> None

参数

名称 说明
table
必需
str

表架构名称(例如 "account")。

ids
必需

要删除的一系列记录 GUID。

use_bulk_delete

如果 True (默认值)且 ids 具有多个值,请使用该 BulkDelete 操作。

默认值: True

例外

类型 说明

如果 ids 不是 pandas 系列。

如果 ids 包含无效值。

update

从 pandas 数据帧排队记录更新。

每行表示更新。 指定 id_column 包含记录 GUID 的列。

示例:


   df = pd.DataFrame([
       {"accountid": "guid-1", "telephone1": "555-0100"},
       {"accountid": "guid-2", "telephone1": "555-0200"},
   ])
   batch.dataframe.update("account", df, id_column="accountid")
update(table: str, changes: DataFrame, id_column: str, clear_nulls: bool = False) -> None

参数

名称 说明
table
必需
str

表架构名称(例如 "account")。

changes
必需

数据帧,其中每行都包含记录 GUID 和要更新的字段。

id_column
必需
str

包含记录 GUID 的 DataFrame 列的名称。

clear_nulls

如果 False (默认值),将跳过 NaN/None 值。 当 True,NaN/None 发送 null 以清除字段。

默认值: False

例外

类型 说明

如果 changes 不是 pandas 数据帧,则为 。

如果 changes 为空、 id_column 缺失或 ID 无效。