在R中,将每个嵌套数据帧写入CSV

Pau*_*aul 2 csv r dataframe export-to-csv purrr

问题:

我有数据框的数据框,purrr并且想将每个嵌套的数据框写入CSV。

> df
# A tibble: 3 × 2
  dataset                   data
    <chr>                 <list>
1     aab    <tibble [681 × 60]>
2     aae <tibble [1,486 × 173]>
3     acm <tibble [3,496 × 139]>
Run Code Online (Sandbox Code Playgroud)

也就是说,我要从上面获取3个CSV:在“数据”下的每个小标题一个CSV。

我更喜欢tidyverse函数lapply或类似函数。

潜在的解决方案

我认为一定是使用map()或类似功能的东西:

df %>% 
  map(~write_csv(data, file=[how to get filename from 'dataset' column?))
Run Code Online (Sandbox Code Playgroud)

Psi*_*dom 5

如果使用purrr::by_row,则可以dataset通过.$dataset以下方式访问:

temp <- df %>% by_row(~write.csv(.$data, file = .$dataset))
Run Code Online (Sandbox Code Playgroud)

这会将行列中的每个小标题都保存到数据集名称下的单独文件中。

  • 更新:使用 `purrrlyr:by_row()` 因为它不再在 `purrr` 中 (3认同)