在模拟数据中指定效果大小

时间:2017-11-06 21:31:04

标签: r simulation

我正在使用simstudy包为混合效果模型的功效分析创建模拟数据集(使用lmer)。我想要做的是能够模拟依赖/结果变量的模拟数据中每个组的特定效果大小。我要做的是为每个时间点的模拟数据集中的每个组设置一个r值。

以下是我使用simstudy

生成的示例数据框
cid period  Group   male    time
1   0   3   1   0
1   1   3   1   3
1   2   3   1   6
1   3   3   1   9
1   4   3   1   25
2   0   1   1   0
2   1   1   1   3
2   2   1   1   6
2   3   1   1   9
2   4   1   1   25
3   0   1   0   0
3   1   1   0   3
3   2   1   0   6
3   3   1   0   9
3   4   1   0   25
4   0   1   1   0
4   1   1   1   3
4   2   1   1   6
4   3   1   1   9
4   4   1   1   25
5   0   3   0   0
5   1   3   0   3
5   2   3   0   6
5   3   3   0   9
5   4   3   0   25
6   0   1   1   0
6   1   1   1   3
6   2   1   1   6
6   3   1   1   9
6   4   1   1   25
7   0   3   0   0
7   1   3   0   3
7   2   3   0   6
7   3   3   0   9
7   4   3   0   25
8   0   2   1   0
8   1   2   1   3
8   2   2   1   6
8   3   2   1   9
8   4   2   1   25
9   0   3   1   0
9   1   3   1   3
9   2   3   1   6
9   3   3   1   9
9   4   3   1   25
10  0   3   1   0
10  1   3   1   3
10  2   3   1   6
10  3   3   1   9
10  4   3   1   25

假设变量y的均值= 25且SD = 10.然后假设r为1组= .2,组2 = .5,组3 = .8 我如何模拟具有这些属性的变量(y)?我正在思考一些与rnorm有关的事情,但实际上并没有取得很大的成功。

〜注意simstudy提供了一个公式模块来定义结果变量 - 它采用

的形式
#define the column variable
  def <- defData(def, varname = "small.eff", dist = "normal", formula = 0.3)
#define the values for the column
    dtAdd <- defDataAdd(varname = "PRCA.small", dist = "normal", formula = 
"25  - (Group + 1) * (period * small.eff)", variance = 10)

但我无法弄清楚如何在公式空间中实际创建标准化变量,这样我就可以为每个组设置一个具体的r值。

0 个答案:

没有答案