在 R 中,将每个嵌套数据帧写入 CSV
In R, write each nested data frame to a CSV
问题:
我有来自 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" 下的每个小标题一个 CSV。
与 lapply
或类似函数相比,我更喜欢 tidyverse 函数。
可能的解决方案
我认为它必须使用 map()
或类似的功能:
df %>%
map(~write_csv(data, file=[how to get filename from 'dataset' column?))
如果您使用 purrr::by_row
,您可以通过 .$dataset
:
访问 dataset
temp <- df %>% by_row(~write.csv(.$data, file = .$dataset))
这会将一行中的每个 tibble 保存到名为 dataset 的单独文件中。
问题:
我有来自 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" 下的每个小标题一个 CSV。
与 lapply
或类似函数相比,我更喜欢 tidyverse 函数。
可能的解决方案
我认为它必须使用 map()
或类似的功能:
df %>%
map(~write_csv(data, file=[how to get filename from 'dataset' column?))
如果您使用 purrr::by_row
,您可以通过 .$dataset
:
dataset
temp <- df %>% by_row(~write.csv(.$data, file = .$dataset))
这会将一行中的每个 tibble 保存到名为 dataset 的单独文件中。