如何将数据框列表中的多个 .csv 文件写入具有原始文件名的新文件夹中?

How to write multiple .csv files from a list of data frames into a new folder with the original filename?

正如主题所暗示的,我正在尝试将数据帧列表写入新文件夹,以便原始名称与原始文件保持相同(并且原始文件不会被覆盖原始文件夹!)。尝试了下面的代码,但根本无法使语法正常工作:

sapply(names(points_calculated), 
       function (x) write_csv(points_calculated[[x]], file=paste("./ExperimentFolder/PointsFolder", x)))

鉴于 points_calculated 是 data.frames 的列表,而 names(points_calculated) 是您想要的文件名,您可以执行以下操作:

library(purrr)
points_calculated %>%
  iwalk(
    ~ readr::write_csv(.x, file = paste("./ExperimentFolder/PointsFolder", .y))
  )
)

imap() 将遍历您的列表,并执行 ~ 之后的功能。 .x 是列表的元素(data.frame),.y 是它的名称。