R语言正态分布的实现示例
作者:qq_27390023
R语言中正态分布包括四个主要函数:rnorm、dnorm、pnorm、qnorm,分别用于生成随机数、计算概率密度、累积概率和计算分位数,本文就来详细的介绍一下具体用法,感兴趣的可以了解一下
统计分布每一种分布有四个函数:d――density(密度函数),p――分布函数,q――分位数函数,r――随机数函数。正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线。
1. rnorm
生成正太分布的随机数
rnorm(n, mean = 0, sd = 1)
rnorm(100) rnorm(10,2,5)
2. dnorm
概率密度分布
dnorm(x, mean = 0, sd = 1, log = FALSE)
dnorm(1) # 标准正态分布中,x=1时的概率。 # 作图 x <- seq(-1,1,0.01) plot(x,dnorm(x))
3. pnorm
累积概率
pnorm(q, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)
pnorm(0) # 正太分布中,x从负无穷到0的累积概率(积分 pnorm(1.644854) # 默认 lower.tail=TRUE,P[X ≤ x] pnorm(1.644854, lower.tail=FALSE) #P[X > x]
4.qnorm
该函数采用概率值,并给出累积值与概率值匹配的数字,pnorm的反函数。
qnorm(p, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)
qnorm(0.95) # 累积值为0.95的x值 qnorm(c(0.5,0.8,0.6,0.3)) qnorm(pnorm(0))
5. 正态分布检验
可以通过密度图、QQ图以及正态分布假设检测数据是否为正态分布。
# P<0.05,则分布为非正态分布。 x1 <- rnorm(50) x2 <- runif(30) shapiro.test(x1) shapiro.test(x2) shapiro.test(rnorm(100, mean = 5, sd = 3)) shapiro.test(runif(100, min = 2, max = 4))
到此这篇关于R语言正态分布的实现示例的文章就介绍到这了,更多相关R语言正态分布内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!