我正在使用此SAS代码。
data a;
do i=1 to 10000000;
x = 12 + 2.5*rannor(0);
y = 15000 + 2500*x + 5000*rannor(0);
output;
end;
我在努力编写一个合适的R代码时遇到了困难,这些代码可以复制(或者更像是)与我上面所做的相似。
我能做的就是:
set.seed(0)
x = 12 +2.5*rnorm(1)
y = 1500+ 250*x+ 500*rnorm(1)
...但我认为SAS程序实际上会生成10000000 x和y,其值基于上面的公式,所以我假设涉及一个数据帧。
之前有人使用过R或/和SAS吗?关于如何做类似SAS代码的任何想法?
答案 0 :(得分:2)
set.seed(0)
n = 10000000
library(dplyr)
data_frame(x = 12 + 2.5*rnorm(n),
y = 1500+ 250*x+ 500*rnorm(n) )
答案 1 :(得分:2)
我不认为这里需要外部包装。
set.seed(0)
n <- 10000000
x <- 12+rnorm(n = n,mean = 0,sd = 1)*2.5
y <- 1500 + 250*x + 500*rnorm(n = n, mean = 0, sd = 1)
data <- cbind(x,y)
您只需致电rnorm()
即可添加您正在寻找的n
。我相信上面的代码会这样做。