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

时间:2017-04-28 01:33:44

标签: r csv 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]>

也就是说,我想要上面的3个CSV:“data”下每个tibble有一个CSV。

我更喜欢将{tidyverse函数添加到lapply或类似函数。

潜在解决方案

我认为必须使用map()或类似功能:

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

1 个答案:

答案 0 :(得分:4)

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

temp <- df %>% by_row(~write.csv(.$data, file = .$dataset))

这会将每个tibble连续保存到名为 dataset 的单独文件中。