这可能是一个愚蠢的问题,但是我不明白为什么sd(dnorm(1:100, mean=50, sd=15))
不返回标准偏差作为[1] 15.0
而不是它实际返回的是[1] 0.009440673
。当我用rnorm()sd(rnorm(100, mean=50, sd=15))
执行此操作时,它将返回我期望的数字,该数字接近15:[1] 17.00682
。有人可以解释一下为什么sd(dnorm(x,mean=mean,sd=sd))
不返回我输入的标准偏差吗?
dnorm函数返回正态分布的密度,其中包含您给出的平均值(50)和标准偏差(15)。
另一方面,rnorm将从正态分布中采样100个数字,这就是为什么标准偏差接近15的原因。