我正在使用名称非常相似(df1,df2,.. df7)的data.frames。因为大部分分析都会完成,所以我想尽可能自动化这个过程。我已经设法在读取文件时使用分配:在函数中使用循环调用具有相似名称的对象R
for(i in 1:7) {
NameFile <- paste("df",i,"_10/score.out", sep="")
OutFile <- read.table(NameFile, na.string="NA",header=TRUE,sep="\t")
NameVar <- paste("df",i,"_10", sep="")
assign(NameVar, OutFile)
}
但是现在我也想在它们中执行操作/函数。例如子集:
for(i in 1:7) {
Newname <- paste("dfsmall",i,sep="")
dftemp <- subset(df[i], p == 0 & abs(sepscore) > 0.3)
assign(Newname, dftemp)
}
我认为大部分是正确的,但是如何调用df [i]?也就是说,已经存在的名称为df1,df2(..)的对象?有没有更好的方法来做到这一点?
这里有一些类似的问题,但没有一个会适合我的问题。然后再次,我很容易错过显而易见的。
谢谢。
这可能对你有用:http://stackoverflow.com/questions/5158830/identify-all-objects-of-given-class-for-further-processing – Chase
有趣的追逐。特别是,我不知道可以使用lapply从对象列表中生成图(lapply(outList,plot))。再一次,我对lapply感到不舒服。 – fridaymeetssunday