【发布时间】:2014-03-14 17:04:54
【问题描述】:
我想在 R 中进行一些模拟,我已经编写了代码,但我没有取得任何进展。如果有人能提供帮助,我将不胜感激。我想生成具有不同观察值的三个时间点的纵向数据,这样对于任何 1000 次模拟它都会产生不同的观察结果。注意数据应该是平衡的。每个时间点的 TRT 和安慰剂数量相等。我真的很挣扎。任何帮助将不胜感激。下面是代码;
ns=20
x1=rnorm(ns,0,1)
x2=rnorm(ns,5,5)
x3=rnorm(ns,10,5)
U=c(x1,x2,x3)
ans=matrix(rep(0,200),nrow=100)
for(k in 1:100)
{ simdata=data.frame(CD=U,
Time=factor(rep(c(1,2,3),each=ns)),
treatment=sample(rep(c('Trt','placebo'),ns/2)))
ans[k,]=table(simdata$treatment)
}
【问题讨论】:
-
我试图清理你的代码,但我不确定我的解释是否正确。随意,纠正。
-
你需要更清楚地描述你想如何模拟。如果你这样做,编写模拟应该非常简单。在学校,我被教导在写代码之前画出算法的流程图。我认为这会对你有所帮助。
-
罗兰非常感谢。我想包含一个代码,它可以进行大约 1000 次模拟,这样每次模拟都会给出不同的观察结果。你知道这是怎么做的吗?
-
现在创建数据框后,我想进行 1000 次模拟,以便每次模拟对时间 1 给出不同的观察,对时间 2 给出不同的观察,对时间 3 给出不同的观察。我还想写一个代码这样我只能在时间点 1 调用观察结果
标签: r