我在R工作,以保存' for'循环到3D矩阵。我无法根据自己的目的调整回答here的类似示例,因此我想分享一个不同的例子。
我有一个大部分完成的" for"循环,从N次迭代的线性模型生成斜率和截距;每次迭代使用一组具有随机t分布的新y值(' rt')。
所需的结果输出是具有两个切片的3D矩阵,此处命名为" out2"。一片名为" Intercept"另一个是" Slope。"两个工作表中的每一列都是使用不同程度的dreedom(dfs)生成的模型的结果
set.seed(14)
x <- sample(0:50, 15) # Generate x-values for simulation
true.a <- 1.5 # Intercept for linear relationship
true.m <- 5 # Slope for linear relationship
dfs <- c(1,2,3,4,6,8,10,15,20,25) # Degrees of freedom
N <- 1000 # Reps in for-loop
out2 <- array(NA, dim=c(N, length(dfs), 2))
dimnames(out2) <- list(NULL, dfs, c("Intercept", "Slope"))
for(j in 1:length(dfs)) {
df.tdist <- dfs[j]
for(i in 1:N) {
y <- true.a + true.m * x + 25*rt(15,df.tdist)
fit <- lm(y ~ x)
out2[ ] <- ?????????????
# The output array 'out2' will consist of two "slices", one with intercepts
and one with slopes. The length of each slice is 1000 rows, and the
width of each slice is 10 columns
}
}
非常感谢您的反馈。