我创建了一个NA容器,并尝试用指定值替换NA,该指定值是其中一个函数的自变量。
num.cars.beg<-20
num.cars.end<-70
num.cars.incr<-5
num.cols<-(abs(num.cars.end-num.cars.beg)/num.cars.incr)+1
num.its<-10
car.var.mat<-matrix(NA,num.its,num.cols) #creates empty container to hold
results
car.intervals<-c(seq(num.cars.beg,num.cars.end, num.cars.incr))
colnames(car.var.mat)<-paste(car.intervals,"Cars",sep = " ")
rownames(car.var.mat)<-paste("Iter.",c(seq(1,num.its,1)),sep = "")
这创建了一个矩阵,其中行由“ num.its”驱动,列为“ num.cars”,范围为20-70,间隔为5。对于每次迭代,我都希望通过公式“ run.sim”,并将NA替换为run.sim的值。例如:
num.cars = 20 num.cars = 25
num.its = 1 run.sim1 output run.sim2 output
num.its = 2 run.sim3 output run.sim4 output
其中
run.sim(num.cars = each value in car.intervals, num.its = 2)
答案 0 :(得分:0)
填充容器的关键是1)确保for循环的结构为“ 1:numcols”或“ 1:numrows”,以及2)run.sim中num.cars的参数通过[矩阵car.intervals的[],因此您可以清楚地知道该函数遍历每一行i,其在每一列j中的位置。
num.its <- 1
num.itr <- 10
for (i in 1:num.itr){
for (j in 1:num.cols){
car.var.mat[i,j]<-mean(run.sim(
num.cars = car.intervals[j],
num.its = num.its))
}
}