一、正态分布
二、R语言中的相关函数
dnorm(x, mean, sd)
pnorm(x, mean, sd)
qnorm(p, mean, sd)
rnorm(n, mean, sd)
参数描述如下:
- x - 是数字的向量;
- p - 是概率向量;
- n - 是观察次数(样本量);
- mean - 是样本数据的平均值,默认值为零;
- sd - 是标准偏差,默认值为1。
三、举例
- 问题:
1、求值函数dnorm
- Density密度
- 给定x,计算f(x)值,绘制正态分布图
x1 <- seq(50,100,0.1)
dd <- dnorm(x1,mean = 76,sd=7)
plot(x1,dd)
- 概率密度函数(PDF,Probability Density Function) plot
2、概率函数pnrom
- Probability概率
- 给定x值,计算 P[X ≤ x]概率值。
- 注意:
lower.tail
默认为true
##≥65,if TRUE (default), probabilities are P[X ≤ x] otherwise, P[X > x]
> a1 <- pnorm(65,mean = 76,sd=7,lower.tail = F)
> a1
[1] 0.9419584
##>85,<65
> a2 <- pnorm(85,mean = 76,sd=7,lower.tail = F) #>85的概率
> a2
[1] 0.0992714
> a3 <- pnorm(65,mean = 76,sd=7,lower.tail = T) #<65的概率
> b1 <- a2+a3
> b1
[1] 0.157313
##65-85
> c1 <- a1-a2
> c1
[1] 0.842687
bb <- pnorm(x1,mean = 76,sd=7)
plot(x1,bb)
- 累积分布函数(CDF,Cumulative Distribution Function)曲线
3、函数qnrom
- Quantile分位数
- 与pnrom相反,已知概率求值。
- 求体重,已值小于此体重的概率为10%。
- 注意:
lower.tail
默认为true
##10%
> d1 <- qnorm(0.1,mean = 76,sd=7)
> d1
[1] 67.02914
4、取样函数rnrom
- random 随机
- 随机取10000个数,设定mean和sd
- 注意与dnorm的区别
#breaks,probability 尝试变化
d <- rnorm(100000,mean = 76,sd=7)
hist(d,breaks = 100,probability = T)