京公网安备 11010802034615号
经营许可证编号:京B2-20210330
用R语言求概率分布_r语言 概率分布图
R语言一个很方便的用处是提供了一套完整的统计表集合。函数可以对累积分布函数P(X≤x),概率密度函数,分位函数(对给定的q,求满足P(X≤x) > q的最小x)求值,并根据分布进行模拟。
在R中,根据某种分布生成随机序列的函数如下:
在统计学中,产生随机数据是很有用的,R可以产生多种不同分布下的随机数序列。这些分布函数的形式为rfunc(n,p1,p2,…),其中func指概率分布函数,n为生成数据的个数,p1, p2, . . .是分布的参数数值。上面的表给出了每个分布的详情和可能的缺省值(如果没有给出缺省值,则意味着用户必须指定参数)。数据分析培训
例:用0~1之间的均匀分布产生10个随机点
> runif(10)
[1] 0.961465376 0.007521925 0.193619234 0.137027246 0.739370654 0.072907082
[7] 0.674551635 0.650777811 0.984664183 0.796723066
大多数这种统计函数都有相似的形式,只需用d、p或者q去替代r,比如密度函数(dfunc(x, …)),累计概率密度函数(也即分布函数)(pfunc(x,…))和分位数函数(qfunc(p, …),0<p<1)。最后两个函数序列可以用来求统计假设检验中P值或临界值。例如,显著性水平为5%的正态分布的双侧临界值是:
> qnorm(0.025)
[1] -1.959964
> qnorm(0.975)
[1] 1.959964
对于同一个检验的单侧临界值,根据备择假设的形式使用qnorm(0.05)或1 – qnorm(0.95)。
下面是一些用R语言求解概率问题的例子:
1. 某人进行射击,每次击中目标的命中率为0.02,独立射击400次,求至少击中两次的概率。
解:400重伯努利试验,用二项分布求解。
P{X = k} = C400k * (0.02)^k * (0.0=98)^(400-k)
P{X≥2} = 1 – P{X = 0} – P{X = 1}
> 1 – sum(pbinom(0:1, 400, 0.02))
[1] 0.9968561
结论:决不能轻视小概率事情,在多次重复试验的情况下,这一事件的发生几乎是肯定的。
2. 设X服从平均值为1,标准差为2的正态分布(高斯分布),即X ~ N(1, 4),求P{0<X≤1.6}
解:这里X是一个连续型随机变量。求X在某段区间上的概率,用X的分布函数在区间两端的值的差。
方法一:P{0<X≤1.6} = P{X≤1.6} – P{X≤0} = F(1.6) – F(0)
> pnorm(1.6, 1, 2) – pnorm(0, 1, 2)
[1] 0.3093739
方法二:转化为标准正态分布。P{x1 < X ≤x2}=P{(x1-μ)/σ < (X-μ)/σ≤(x1-μ)/σ}=φ((x2-μ)/σ) –φ((x1-μ)/σ)
即P{0<X≤1.6}=φ((1.6-1)/2) –φ((0-1)/2)
> pnorm((1.6-1)/2) – pnorm((0-1)/2) #pnorm函数的缺省参数mean=0,sd=1,即默认标准正态分布
[1] 0.3093739
知识点:设X是一个随机变量,x是任意实数,函数F(x)=P{X≤x}称为X的分布函数。
对于任意实数x1,x2(x1<x2),有P{x1<X≤x2}=P{X≤x2}-P{X≤x1}=F(x2)-F(x1),
因此,若已知X的分布函数,就可以知道X落在任一区间(x1,x2]上的概率,在这个意义上说,分布函数完整地描述了随机变量的统计规律性。
分布函数是一个普遍的函数,正是通过它,我们将能用数学分析的方法来研究随机变量。
如果将X看成是数轴上的随机点的坐标,那么,分布函数F(x)在x处的函数值就表示X落在区间(-∞,x]上的概率。
3. 求标准正态分布的上α分位点。
知识点:设X~N(0,1),若Zα满足条件 P(X>Zα)=α,0<α<1,则称Zα为标准正态分布的上α分位点.
注意上α分位点和R语言中分位函数(对给定的q,求满足P(X≤x) > q的最小x)之间的关系。
解:下面给出α=0.001、α=0.005、α=0.01、α=0.025时的上α分位点Zα的值。
> exp <- expression_r(qnorm(1 – alpha))
> alpha = 0.001
> eval_r(exp)
[1] 3.090232
> alpha = 0.005
> eval_r(exp)
[1] 2.575829
> alpha = 0.01
> eval_r(exp)
[1] 2.326348
> alpha = 0.025
> eval_r(exp)
[1] 1.959964
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
很多数据分析师画过趋势图、做过业绩预测,但当被问到“这个月销售额增长20%,到底是长期趋势自然增长,还是促销活动的短期 ...
2026-08-21在数据分析与数据可视化工作中,直方图是展示数据分布特征、离散程度、集中区间的核心图表,能够直观呈现数值数据的频次分布规律 ...
2026-08-20在数据分析领域有一句核心准则:垃圾数据进,垃圾数据出。数据清洗是数据分析、数据建模、数据可视化之前的必经前置工序,也是保 ...
2026-08-20 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-08-20在Python数据分析与数据清洗工作中,Pandas是最核心的数据处理库,DataFrame是结构化数据的标准存储格式。在实时数据采集、循环 ...
2026-08-19在零售行业大数据分析与精细化运营领域,纸尿裤旁摆放啤酒是最经典、最具代表性的商业案例。两种看似毫无关联的商品,一个是婴幼 ...
2026-08-19 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-08-19在数据分析、业务监控、质量检测与风险管控工作中,数据波动性是衡量数据稳定性、业务健康度、结果可信度的核心依据。数据波动代 ...
2026-08-18很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当导致 ...
2026-08-18在数据分析、业务评价、产品评级、用户分层与综合决策场景中,单一指标往往无法全面、客观地评价事物整体水平。现实中的评价对象 ...
2026-08-18在数理统计、假设检验、数据分析与机器学习领域中,卡方分布(χ²分布)是继正态分布、t分布之后最重要的连续型概率分布之一。 ...
2026-08-17在Python数据清洗、文本校验、账号密码规则校验、脏数据过滤、字符串规整化处理中,正则表达式是最高效、最常用的文本匹配工具。 ...
2026-08-17 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-08-17手游行业具备用户迭代快、竞争激烈、用户粘性易流失的典型特征。随着新游持续上线、玩家审美升级、玩法疲劳等问题出现,存量用户 ...
2026-08-14在数字化产品运营、商业数据分析、业务增长管理中,零散的指标统计无法支撑系统性的业务决策。单一的点击率、转化率、销量数据只 ...
2026-08-14 很多数据分析师每天都在写SQL,但当被问到“数据查询语言(DQL)的本质是什么”“SELECT语句中各子句的书写顺序与实际执行顺 ...
2026-08-14在数据库数据分析、数据清洗、报表统计与业务查询场景中,日期时间是最高频、最核心的基础字段。数据库中存储的日期格式多样,包 ...
2026-08-13在数据统计分析与数据清洗工作中,箱线图是一种简洁高效、客观性强的数据可视化图表,能够直观呈现数据集的分布特征、离散程度和 ...
2026-08-13 很多数据分析师写过无数个SELECT查询,但当被问到“如何新建一张表来固化中间数据”“创建视图和创建物理表有什么区别”“视 ...
2026-08-13在自动化办公、数据采集、定时统计、日志清理、系统监控等场景中,程序往往需要按照固定时间间隔重复执行指定任务,这种运行机制 ...
2026-08-12