在R中模拟数据集

时间:2015-08-19 03:00:01

标签: r dataset simulate

我对R来说还是比较新的并且卡住了一点。我试图用某些参数模拟R中的数据集。例如,如果我希望我的观察数量为100,并且x是随机正态变量,其中均值为0且标准偏差为1,则满足以下等式y = 0.7 + 3 * x + \ mu。此外,\ mu是随机正态误差,均值为1,sd为2.

现在,我已经掌握了初始值代码的基础知识,但不知道如何添加等式或100个单独的随机正常错误。

SELECT DISTINCT(SUBSTRING(Users.LastName,1,1)) AS LastName,
       CuAcctsUsr.UserId

-- Same as above
SELECT  DISTINCT  (SUBSTRING(Users.LastName,1,1)) AS LastName,
                  CuAcctsUsr.UserId

-- Same as above
SELECT  DISTINCT  SUBSTRING(Users.LastName,1,1) AS LastName,
                  CuAcctsUsr.UserId

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

通常在R中,vectorized中的代码。例如,

x <- c(1,2,3)
y <- 1 + x # 2 3 4

R中的分布具有pdf,cdf,inverse cdf和生成随机数的函数。例如,

pnorm() # p: probability (pdf)
dnorm() # d: distribution function (cdf)
qnorm() # q: quantile (inverse cdf)
rnorm() # r: random normal (generating random numbers)

设置种子在模拟中很重要,因此可以重现结果。在R中使用set.seed()

所以回答你的问题:

set.seed(1000) 
n <- 100
x <- rnorm(n, 0, 1) # n: number observations, 0: mean, 1: sd
mu <- rnorm(n, 1, 2)
y <- 0.7 + 3*x + mu # we can do this R allows code to be vectorized