使用purrr :: map将多个数据帧写入csv文件

Seb*_*uer 3 csv r purrr

问题:

我有一个数据帧列表,应该作为csv文件写入磁盘.

假设这是数据框列表:

dfs <- list(iris,
            mtcars)
Run Code Online (Sandbox Code Playgroud)

什么没有奏效:

我试图像这样建立正确的文件名,但它不起作用:

dfs %>% 
  map(~paste0("data-raw/", ., ".csv"))
Run Code Online (Sandbox Code Playgroud)

我希望这一点能正确地将文件名作为字符串返回.而是map将每列和每个值匹配到paste0调用.

我也尝试了这个deparse(substitute(.))技巧,但.map通话中没有正确认识.

下一步是将数据帧(元素dfs)写为csv文件.

题:

我如何使用purrr::map(或类似的appraoch)将每个数据帧(每个元素dfs)作为csv-file写入磁盘write_csv

小智 7

试试这个.

list(iris = iris, mtcars = mtcars) %>%
  names(.) %>%
  map(~ write_csv(dfs[[.]], paste0("data-raw/", ., ".csv")))
Run Code Online (Sandbox Code Playgroud)