使用 expand.grid 创建多级数据

问题描述 投票:0回答:0

我想为模拟创建多级数据。

现在,目标只是创建 10 个集群,每个集群包含 20 个观测值。

另外,我想添加一个 L1 和一个 L2 预测器。

到目前为止我已经想出了这个。

ni <- c(1:20)
#numbers of student per class

nj <- 10
#numbers of clusters/classes

grid <- grid <- expand.grid(ni = ni,
                            nj = 1:nj,
                            xij = NA,
                            zj = NA)


for(i in 1:nrow(grid)){ 
  # Create level 1 explanatory/predictor variable (draw from standard normal)
  grid$xij[i] <- rnorm(1)
  
}

  ni nj        xij zj
1  1  1 -1.3471340 NA
2  2  1 -1.0162505 NA
3  3  1 -1.4800127 NA
4  4  1 -2.2908474 NA
5  5  1  1.6824252 NA
6  6  1 -0.5599885 NA

我确实设法创建了 L1 预测器,但现在我不知道如何创建 L2 预测器,以便它对每个集群都是相同的。

你知道怎么做吗?创建一个在集群内不变的 L2 预测器?

谢谢!!!

r simulation multi-level multilevel-analysis
© www.soinside.com 2019 - 2024. All rights reserved.