作为在 Dataset
查询上调用 collect()
的替代方法,您可以使用此函数访问 Dataset
中的 RecordBatch
流。这使您可以在 R 中执行更复杂的操作,这些操作对数据块进行操作,而无需一次将整个数据集保存在内存中。您可以将 map_batches()
包含在 dplyr 管道中,并在之后对 Arrow 中的数据流执行其他 dplyr 方法。
参数
- X
一个
Dataset
或arrow_dplyr_query
对象,由Dataset
上的dplyr
方法返回。- FUN
要应用于每个批次的函数或
purrr
样式的 lambda 表达式。它必须返回一个 RecordBatch 或可以通过 `as_record_batch()` 转换为 RecordBatch 的对象。- ...
传递给
FUN
的附加参数- .schema
可选的
schema()
。如果为 NULL,则将从第一个批次推断 schema。- .lazy
使用
TRUE
延迟计算FUN
,因为批次是从结果中读取的;使用FALSE
在返回读取器之前对所有批次计算FUN
。- .data.frame
已弃用的参数,将被忽略