跳到內容

這可以用於在 Arrow 和 DuckDB 之間來回傳遞資料的管線中。

用法

to_arrow(.data)

參數

.data

要轉換的物件

一個 RecordBatchReader

詳細資訊

請注意,您只能對此函數的結果呼叫一次 collect()compute()。為了規避此限制,您應該僅在管線的最後步驟呼叫 collect(),或對結果呼叫 as_arrow_table() 以將整個 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     6     19.7
#> 2     8     15.1
#> 3     4     23.7