我正在使用 R 中的 for 循环模拟几个数据集,并将数据集保存在文件夹中的文本文件中。由于我需要分析这些数据集,我将这些数据从文件夹导入到 R 并进行分析。我想知道是否有任何方法可以通过将它们作为数据框保存在 R 中而不是保存和导入来进行模拟和分析。这是我的代码:
setwd("C:\\Users\\John\\Desktop\\datageneration")
kitem<-10
N<-100
disc<-rnorm(k,0,1)
diff=rnorm(k,0,1)
irtp<-function(t,a,b,pexp)
{
pexp<-1/(1+exp(-b*(t-a)))
pexp
}
for( iter in 1:20)
{
X<-mat.or.vec(N,kitem)
P<-mat.or.vec(N,kitem)
for(i in 1:N)
{
theta<-rnorm(N,0,1)
assign(paste0("theta", iter), theta)
filename1 <- paste (" theta",iter ,".txt ", sep ="")
write.table( get(paste0("theta",iter)) , file = filename1 , row.names =FALSE ,col.names = FALSE )
for(k in 1:kitem)
{
P[i,k]<-irtp(theta[i],diff[k],disc[k],pexp)
X[i,k]<-ifelse(runif(1)<P[i,k],1,0)
assign(paste0("X",iter), X) # HERE'S THE PART THAT I NEED HELP
filename2 <- paste ("X",iter ,".txt ", sep ="")
write.table( get(paste0("X",iter)) , file = filename2 , row.names =FALSE ,col.names = FALSE )
}
}
}
我想做的只是通过调用它们的名称(例如,theta1)来使用生成的数据文件(例如,theta1、theta2、theta3...、theta20)。由于我正在生成数千个数据集,我想知道是否可以在不使用 write.table 然后 read.table 函数的情况下做到这一点。如果您能帮助我,我将不胜感激。