使用purrr:map从当前工作目录中的列表中写入xlsx文件

时间:2018-05-10 22:32:49

标签: r purrr writexl

我正在尝试使用purrr :: map从当前工作R空间中的列表中编写excel文件。我想使用每个列表的名称作为excel文件名(例如:name_1.xlsx,name_2.xlsx)。我如何获得purrr:map来做到这一点?

library(tidyverse)
library(writexl)

l2 <- list(
  tibble(x = 1:5, y = 1, z = x ^ 2 + y),
  tibble(x = 2:6, y = 3, z = x ^ 2 + y)
  )

names(l2) <- c("name_1", "name_2")

我尝试了这两种解决方案,但它们无法正常工作。

map(l2, write_xlsx, str_c(names(l2), ".xlsx"))

map(l2, ~write_xlsx(l2, path = str_c(names(l2), ".xlsx")))

1 个答案:

答案 0 :(得分:1)

我认为您需要 :host { margin: 5px; } 同时提供map2&amp; l2names(l2)。此处write_xlsx引用.xl2引用.y

names(l2)

修改:您还可以使用map2(l2, names(l2), ~ write_xlsx(.x, path = str_c(.y, ".xlsx"))) $`name_1` [1] "name_1.xlsx" $name_2 [1] "name_2.xlsx" walk2&amp; pmap

pwalk