将表中的xlsx文件导出为单独的过滤列

问题描述

我有一个数据集df

aa1  bb1  ccc
aa2  bb2  ccc
aa3  bb3  ddd
aa4  bb4  ddd
aa5  bb5  eee

我想将每个单独的已过滤列导出为xlsx文件

write.xlsx(df,'files(ccc,ddd,eee,...).xlsx')

ccc.xlsx的输出

aa1  bb1  ccc
aa2  bb2  ccc

ddd.xlsx的输出

aa3  bb3  ddd
aa4  bb4  ddd

eee.xls的输出

aa5  bb5  eee

谢谢

解决方法

类似的方法应该起作用:

files <- unique(df$V3) # Or manually files <- c("ccc","ddd","eee")
for (f in files) {
  write.xlsx(df[df$V3 == f,],paste0(f,".xlsx"))
}

数据

df <- data.frame(
  V1 = c("aa1","aa2","aa3","aa4","aa5"),V2 = c("bb1","bb2","bb3","bb4","bb5"),V3 = c("ccc","ccc","eee")
)