我有一个文件列表,其中进入 for 循环的文件具有不同数量的列。我想生成每个输入文件的子集,其中时间变量(列)>800,并且输入文件的编号也是输出列表的一部分。
由于不同的列号(6、7、8 或 9),我能够使用下面的代码版本(if 语句)一次输出一个文件的列表。但是当我尝试循环它并更改我得到的文件名时:
Error in subset[[i]] : object of type 'closure' is not subsettable
for (i in 1:n)
{currentfile<- filelist[i]
a=read.csv(currentfile, header=F)
b=a[3:1000]
mat-as.matrix(b)
mat2.df<-as.data.frame(mat2)
if (ncol(mat2.df) == 6) subset6[[i]]<-subset[[i]](mat2.df, time>800)
if (ncol(mat2.df) == 7) subset7[[i]]<-subset[[i]](mat2.df, time>800)
if (ncol(mat2.df) == 8) subset8[[i]]<-subset[[i]](mat2.df, time>800)
if (ncol(mat2.df) == 9) subset9[[i]]<-subset[[i]](mat2.df, time>800)'
}
提前感谢您的任何建议!