r-如何使用lapply来撇除r::撇除多个数据帧,然后将其导出到Excel



我有2个数据帧(在现实生活中更多(。我的目标是应用skim函数,然后将它们作为excel导出到文件夹中。它们也会有不同的Excel文件名。

df1 <- data.frame(x = rep(3, 5), y = seq(1, 5, 1), ID = letters[1:5])

df2 <- data.frame(x = rep(5, 5), y = seq(2, 6, 1), ID = letters[6:10])

我需要实现以下目标的捷径:

对于df1:

df1_summary<-skim(df1)

df1_summary<-as.data.frame(df1_summary)

write_xlsx(df1_summary,"df1_summary.xlsx")

对于df2:

df2_summary<-skim(df2)

df2_summary<as.data.frame(df2_summary)

write_xlsx(df2_summary,"df2_summary.xlsx")

据我所知,df.list<-list(df1, df2)

lapply(df.list, function(x) ...

在现实生活中,我有2个以上的数据帧来完成这项任务。任何缩短流程的帮助都会有所帮助!

我们可以在将数据集放入list后应用该函数

library(skimr)
lst1 <- lapply(list(df1, df2), function(x) {
dat <-  as.data.frame(skim(x)) 
})
names(lst1) <- c('df1_summary', 'df2_summary')
Map(function(x, y) write_xlsx(x, paste0(y, ".xlsx")), lst1, names(lst1))

相关内容

最新更新