跳过内容

这可以在 Arrow 和 DuckDB 之间来回传递数据的管道中使用。

用法

to_arrow(.data)

参数

.data

要转换的对象

返回值

一个 RecordBatchReader

详情

请注意,您只能对该函数的结果调用 collect()compute() 一次。为解决此限制,您应该只在管道的最后一步调用 collect(),或者对结果调用 as_arrow_table() 以将整个表实例化到内存中。

示例

library(dplyr)

ds <- InMemoryDataset$create(mtcars)

ds %>%
  filter(mpg < 30) %>%
  to_duckdb() %>%
  group_by(cyl) %>%
  summarize(mean_mpg = mean(mpg, na.rm = TRUE)) %>%
  to_arrow() %>%
  collect()
#> # A tibble: 3 x 2
#>     cyl mean_mpg
#>   <dbl>    <dbl>
#> 1     4     23.7
#> 2     6     19.7
#> 3     8     15.1