Я имитирую несколько наборов данных, используя для цикла в R и сохраняя наборы данных в текстовых файлах в папке. Поскольку мне нужно проанализировать эти наборы данных, я импортирую эти данные из папки в R и делаю свои анализы. Мне интересно, есть ли способ сделать симуляцию и анализ, сохранив их в 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, theta2, theta3 ..., theta20), называя их имена (например, theta1.). Поскольку я генерирую тысячи наборов данных, я хотел бы знать, могу ли я это сделать, не используя функции write.table then read.table. Я буду очень признателен, если вы сможете мне помочь.
Являются ли ваши векторы моделирования (например, в вашем примере кода выше) или более сложными структурами? Нужно ли хранить данные, или будет ли он в порядке, просто производить, использовать и отбрасывать их? – vaettchen
Спасибо за просьбу vaettchen. На самом деле мой код более сложный, чем этот. Я также создаю матрицы, которые включают в себя 100 строк и 10 столбцов, кроме того, тета-векторы. Я просто разместил этот код для простоты. Я все же хочу сохранить файлы в папке, как показано в моем коде. Но после анализа я удалю некоторые из них, которые не соответствуют моим критериям. Просто, я хотел бы сделать оба пути одновременно. Мне нравится хранить наборы данных в файле, а также использовать их без импорта. Извините за мой английский. Надеюсь, вы понимаете, что я хочу делать. –
Вы переписываете файл «dat» 19 раз. –