使用数据框列表中的名称重命名 Excel 选项卡名称

Renaming Excel tabs name using names from list of dataframe

我对 R 很陌生,需要一些建议。

我使用 xlsx 包中的以下代码将数据帧列表 final_data 导出到 excel:

lapply(final_data,function(x){
  write.xlsx2(x,file = "Final.xlsx",sheetName = x,append = TRUE, row.names = FALSE)
})

但是,我的 sheet 名称并未反映原始列表中相应数据框的名称。相反,sheet 名称变成了 "Sheet0"、"Sheet1"、"Sheet2" 等。是否需要对上述代码进行更改?非常感谢任何建议。谢谢!

当您使用lappy时,您会丢失每个元素名称的信息。所以你可以先保留这些信息,然后循环遍历数据和名称。

library(tidyverse) 
library(xlsx)
name = names(final_data)
map2(final_data, 
     name, 
     ~write.xlsx2(.x, file = "Final.xlsx",
                  sheetName = .y, append = TRUE, 
                  row.names = FALSE))