如何在 r 中生成正态分布(附示例)
您可以使用rnorm()函数在 R 中快速生成正态分布,该函数使用以下语法:
rnorm(n, mean=0, sd=1)
金子:
- n:观察数。
- 平均值:正态分布的平均值。默认值为 0。
- sd:正态分布的标准差。默认值为 1。
本教程展示了使用此函数在 R 中生成正态分布的示例。
相关: R 中 dnorm、pnorm、qnorm 和 rnorm 指南
示例:在 R 中生成正态分布
以下代码显示了如何在 R 中生成正态分布:
#make this example reproducible set.seed(1) #generate sample of 200 obs. that follows normal dist. with mean=10 and sd=3 data <- rnorm(200, mean=10, sd=3) #view first 6 observations in sample head(data) [1] 8.120639 10.550930 7.493114 14.785842 10.988523 7.538595
我们可以快速找到该分布的均值和标准差:
#find mean of sample
mean(data)
[1] 10.10662
#find standard deviation of sample
sd(data)
[1] 2.787292
我们还可以创建一个快速直方图来可视化数据值的分布:
hist(data, col=' steelblue ')
我们甚至可以执行Shapiro-Wilk 测试来查看数据集是否来自正常人群:
shapiro.test(data)
Shapiro-Wilk normality test
data:data
W = 0.99274, p-value = 0.4272
测试的 p 值为0.4272 。由于该值不小于0.05,我们可以假设样本数据来自正态分布的总体。
这个结果应该不足为奇,因为我们使用rnorm()函数生成数据,它自然地从正态分布生成数据的随机样本。
其他资源
如何在 R 中绘制正态分布
R 中 dnorm、pnorm、qnorm 和 rnorm 指南
如何在 R 中执行 Shapiro-Wilk 正态性检验