6. R语言之dpqr概率函数 + 生成随机数runif()

编程入门 行业动态 更新时间:2024-10-06 14:32:56

6. R语言之dpqr概率函数 + 生成<a href=https://www.elefans.com/category/jswz/34/1766016.html style=随机数runif()"/>

6. R语言之dpqr概率函数 + 生成随机数runif()

文章目录

    • 1. 正态分布的密度函数 :dnorm
    • 2. 累积密度函数 :pnorm
    • 3. 分位数功能 :qnorm
    • 4. 随机采样函数 :rnorm
    • 5. 生成随机数runif()

在R中,概率分布函数使用第一个字母(d, p, q, r)表示所知分布的某一方面:

d表示密度函数
p表示累积密度函数
q分位数函数,即已知某一点x的概率值是多少,反求x
r随机函数。可用于分布检验

R中有如下概率分布函数:


以正态分布norm为例,共有:dnorm,pnorm,qnorm 和 rnorm。

1. 正态分布的密度函数 :dnorm

概率密度函数(PDF,简称:密度)表示观察具有特定值的测量值的概率,因此密度上的积分始终为1。
正常密度定义为

使用密度,可以确定事件的概率。例如,您可能想知道: 一个人的IQ恰好为140的可能性是多少?
在这种情况下,您将需要检索IQ分布在值140处的密度。可以用100的平均值和15的标准差对IQ分布进行建模。
相应的密度为:

sample.range <- 50:150
iq.mean <- 100
iq.sd <- 15
iq.dist <- dnorm(sample.range, mean = iq.mean, sd = iq.sd)
iq.df <- data.frame("IQ" = sample.range, "Density" = iq.dist)library(ggplot2)
ggplot(iq.df, aes(x = IQ, y = Density)) + geom_point()

通过这些数据,我们现在可以回答初始问题以及其他问题:

likelihood of IQ == 140?
pp(iq.df$Density[iq.df$IQ == 140])
[1] "0.076%"likelihood of IQ >= 140?
[1] "0.384%"likelihood of 50 < IQ <= 90?
[1] "26.284%"



2. 累积密度函数 :pnorm

累积密度(CDF)函数是单调增加的函数,因为它通过


为了直观了解CDF,让我们为IQ数据创建一个图:

ggplot(iq.df, aes(x = IQ, y = CDF_LowerTail)) + geom_point()

如我们所见,所描绘的CDF显示了IQ小于或等于给定值的可能性
利用这些知识,我们可以获得一些先前问题的答案:

likelihood of 50 < IQ <= 90?
[1] "25.249%"



3. 分位数功能 :qnorm

分位数函数是累积密度函数(CDF)的反函数。因此,分位数函数从概率映射到值。

ggplot(icdf.df, aes(x = Probability, y = IQ)) + geom_point()

使用分位数函数,我们可以回答与分位数有关的问题:

what is the 25th IQ percentile?
[1] 89.88265what is the 75 IQ percentile?
[1] 110.11730%       25%         50%       75%      100% 
-Inf  89.88265   100.00000   110.11735     Inf



4. 随机采样函数 :rnorm

当您想从正态分布中抽取随机样本时,可以使用rnorm。例如,我们可以rnorm用来模拟IQ分布中的随机样本。

ggplot() + geom_histogram(data = my.df, aes(x = IQ)) + facet_wrap(.~SampleSize, scales = "free_y")

ggplot(my.sample.df, aes(x = IQ)) + geom_histogram()

请注意,我们进行调用set.seed()是为了确保随机数生成器始终生成相同的数字序列以实现可重复性。



5. 生成随机数runif()



每个Set.seed()号码对应的随机数是相同的

更多推荐

6. R语言之dpqr概率函数 + 生成随机数runif()

本文发布于:2024-02-13 17:39:49,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1759714.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:随机数   概率   函数   语言   runif

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!