我已经搜寻了几个小时,但仍然无法解决这个问题。我在R全局环境中遍历一些对象,并将其保存为不同的文件名。但是错误总是在最后阶段弹出:
Error in as.vector(x, mode = "character") :
no method for coercing this S4 class to a vector
这个想法是将环境中所有以proj2开头的列表都接受,并最终将它们保存到txt文件中。我猜是因为要保存的文件名还包含x,该x指示了我的对象名?但是,如何在不执行此操作的情况下将文件保存为其他名称?
这是我的代码:
savelist <- function(x){
x_up <- subset(x, padj <= 0.05 & log2FoldChange >= 0 )
x_up$fac_lab <- rep("treated_up", nrow(x_up))
x_f_up <- as.data.frame(x_up)[,c(7,2,6)]
write.table(x_f_up, file= paste(x, "up", sep ="_"), sep="\t",quote=FALSE, row.names=TRUE, col.names = FALSE, append = FALSE)
}
lapply(mget(ls(pattern = "proj2")), savelist)
任何建议都会有所帮助。谢谢。