R语言中的概率论和数理统计
一、随机变量
(一)、什么是随机变量?
1.定义
随机变量(random variable)表示随机现象各种结果的实值函数。随机变量是定义在样本空间S上,取值在实数域上的函数,由于它的自变量是随机试验的结果,而随机实验结果的出现具有随机性,因此,随机变量的取值具有一定的随机性。
2.R程序:生成一个在(0,1,2,3,4,5)的随机变量
> S<-1:5
> sample(S,1)
[1] 2
> sample(S,1)
[1] 3
> sample(S,4)
[1] 3 5 4 1
#sample(x=x,size=5,replace=T),其中size指定抽样的次数,“replace”就是重复的意思。即可以重复对元素进行抽样,也就是所谓的有放回抽样。
(二)、离散型随机变量
1.定义
如果随机变量X的全部可能的取值只有有限多个或可列无穷多个,则称X为离散型随机变量。
2.R程序:生成样本空间为(1,2,3)的随机变量X,X的取值是有限的
> S<-1:3
> X<-sample(S,1);X
[1] 2
(三)、连续型随机变量
1.定义
随机变量X,取值可以在某个区间内取任一实数,即变量的取值可以是连续的,这随机变量就称为连续型随机变量
2.定义R程序:生成样本在空间(0,1)的连续随机函数,取10个值
> runif(10,0,1)
[1] 0.3819569 0.7609549 0.6692581 0.6314708 0.5552201 0.8225527 0.7633086 0.4667188 0.1883553
[10] 0.> runif(10,0,1)
[1] 0.3819569 0.7609549 0.6692581 0.6314708 0.5552201 0.8225527 0.7633086 0.4667188 0.1883553
[10] 0.3741653
#1.runif(n,min=0,max=1)函数的规则:
n表示生成的随机数数量,min表示均匀分布的下限,max表示均匀分布的上限;若省略参数min、max,则默认生成[0,1]上的均匀分布随机数。
(一)、数学期望(mathematical expectation)
1.离散型随机变量:一切可能的取值xi与对应的概率Pi(=xi)之积的和称为该离散型随机变量的数学期望,记为E(x)。数学期望是最基本的数学特征之一。它反映随机变量平均取值的大小。
R程序:计算样本(1,2,3,7,21)的数学期望
> S<-c(1,2,3,7,21)
> mean(S)
[1] 6.8
2.连续型随机变量:若随机变量X的分布函数F(x)可表示成一个非负可积函数f(x)的积分,则称X为连续性随机变量,f(x)称为X的概率密度函数,积分值为X的数学期望,记为E(X)。
(二)、方差(Variance)
方差是各个数据与平均数之差的平方的平均数。在概率论和数理统计中,方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。
设X为随机变量,如果E{[X-E(X)]^2}存在,则称E{[X-E(X)]^2}为X的方差,记为Var(X)。
R程序:计算样本(1,2,3,7,21)的方差
> S<-c(1,2,3,7,21)
> var(S)
[1] 68.2
(三)、标准差(Standard Deviation)
标准差是方差的算术平方根sqrt(var(X))。标准差能反映一个数据集的离散程度。平均数相同的,标准差未必相同。
R程序:计算样本(1,2,3,7,21)标准差
> S<-c(1,2,3,7,21)
> sd(S)
[1] 8.258329
(四)、各种分布的期望和方差
离散型分布:两点分布,二项分布,泊松分布等
连续型分布:均匀分布,指数分布,正态分布,伽马分布等
对于某一特定场景,其所符合的分布规律一般先验给出
(五)、常用统计量
1.众数(Mode):
一组数据中出现次数最多的数值,叫众数,有时众数在一组数中有好几个。
R程序:计算样本(1,2,3,3,3,7,7,7,7,9,10,21)的众数
> S<-c(1,2,3,3,3,7,7,7,7,9,10,21)
> names(which.max(table(S)))
[1] "7"
#table()的输出可以看成是一个带名字的数字向量。可以用names()和as.numeric()分别得到名称和频数
> x <- sample(c("a", "b", "c"), 100, replace=TRUE)
> names(table(x))
[1] "a" "b" "c"
> as.numeric(table(x))
[1] 42 25 33
也可以直接把输出结果转化为数据框,as.data.frame():
> as.data.frame(table(x))
x Freq
1 a 42
2 b 25
3 c 33
> table(S)
S
1 2 3 7 9 10 21
1 1 3 4 1 1 1
2.最小值(minimum):
在给定情形下可以达到的最小数量或最小数值
3.最大值(maximum):
在给定情形下可以达到的最大数量或最大数值
4.中位数(Medians):
是指将统计总体当中的各个变量值按大小顺序排列起来,形成一个数列,处于变量数列中间位置的变量值就称为中位数
5.四分位数(Quartile):
用于描述任何类型的数据,尤其是偏态数据的离散程度,即将全部数据从小到大排列,正好排列在上1/4位置叫上四分位数,下1/4位置上的数就叫做下四分位数
R程序:计算样本(1,2,3,4,5,6,7,8,9)的四分位数
> S<-c(1,2,3,4,5,6,7,8,9)
> quantile(S)
0% 25% 50% 75% 100%
1 3 5 7 9
> fivenum(S)
[1] 1 3 5 7 9
6.通用的计算统计函数:
R程序:计算样本(1,2,3,4,5,6,7,8,9)的统计函数
> S<-c(1,2,3,4,5,6,7,8,9)
> summary(S)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1 3 5 5 7 9
(六)、协方差(Covariance)
协方差用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况,即当两个变量是相同的情况。设X,Y为两个随机变量,称E{[X-E(X)][Y-E(Y)]}为X和Y的协方差,记录Cov(X,Y)。
R程序:计算X(1,2,3,4)和Y(5,6,7,8)的协方差
> X<-c(1,2,3,4)
> Y<-c(5,6,7,8)
> cov(X,Y)
[1] 1.666667
(七)、相关系数(Correlation coefficient)
相关系数是用以反映变量之间相关关系密切程度的统计指标。相关系数是按积差方法计算,同样以两变量与各自平均值的离差为基础,通过两个离差相乘来反映两变量之间相关程度。当Var(X)>0, Var(Y)>0时,称Cov(X,Y)/sqrt(Var(X)*Var(Y))为X与Y的相关系数。
R程序:计算X(1,2,3,4)和Y(5,7,8,9)的相关系数
> X<-c(1,2,3,4)
> Y<-c(5,7,8,9)
> cor(X,Y)
[1] 0.9827076
八)、矩
1.原点矩(moment about origin)
2.中心矩(moment about centre)
均值和方差分别就是一阶原点矩和二阶中心矩,具体定义和概念,可详见陈希孺《概率论与数理统计》P132-133
3.偏度(skewness):
是统计数据分布偏斜方向和程度的度量,是统计数据分布非对称程度的数字特征。设分布函数F(x)有中心矩μ2=E(X −E(X))^2, μ3 = E(X −E(X))^3,则Cs=μ3/μ2^(3/2)为偏度系数。
当Cs>0时,概率分布偏向均值右则,Cs<0时,概率分布偏向均值左则。 R语言:计算10000个正态分布的样本的偏度
> library(PerformanceAnalytics)
> S<-rnorm(10000)
> skewness(S)
[1] -0.00178084
> hist(S,breaks=100)
#hist() 函数:绘制直方图
4.峰度(kurtosis): 又称峰态系数。
表征概率密度分布曲线在平均值处峰值高低的特征数。峰度刻划不同类型的分布的集中和分散程序。设分布函数F(x)有中心矩μ2=E(X −E(X))^2, μ4=E(X −E(X))^4,则Ck=μ4/(u2^2-3)为峰度系数。
R语言:计算10000个正态分布的样本的峰度,(同偏度的样本数据)
> library(PerformanceAnalytics)
> kurtosis(S)
[1] -0.02443549
> hist(S,breaks=100)
(九)、协方差矩阵(covariance matrix)
可以理解成不同维度上的协方差
> x=as.data.frame(matrix(rnorm(10),ncol=2))
> x
V1 V2
1 -2.11315384 -2.55189840
2 -0.96631271 -1.36148355
3 -0.02835058 -0.82328774
4 -1.86669567 -0.07201353
5 0.27324957 -2.23835218
> var(x)
V1 V2
V1 1.13470650 -0.09292042
V2 -0.09292042 1.03172261
> cov(x)
V1 V2
V1 1.13470650 -0.09292042
V2 -0.09292042 1.03172261
三、极限定理
引言:
我们知道,随机现象的统计性规律是在相同条件下进行大量重复试验时呈现出来的,常见的两种统计规律性为:
频率的稳定性,即在大量重复试验中,事件发生的频率总是在它的概率附近摆动,且随着试验次数的增多,该频率总是越来越明显地稳定在其概率附近;
平均值的稳定性,即在多次重复测量中,测量平均值总是在它的真实值附近摆动,且随着测量次数的增加,测量平均值总是越来越明显地稳定在其真实值附近。
对以上两种规律,人们不仅研究观测值趋向于哪个稳定值,而且还分析了观测值在稳定值周围的摆动形式(分布情况)。
针对观测值趋向于哪个稳定值,用数学语言及理论来分析研究,就引出了大数定律。其中关于频率稳定性的大数定律称为伯努利大数定律,关于均值稳定性的大数定律称为辛钦大数定律。
针对观测值在稳定值周围的摆动形式,用数学理论进行研究,就得出了中心极限定理.所谓的中心极限定理,就是把和的分布收敛于正态分布的那些定理的一个统称。
注 在概率论中,“定律”与“定理”是一样的意思.“定理”一般用于指那些能用数学工具严格证明的结论;而“定律”是指人们通过观察分析得出来一种经验结论,如牛顿三大定律,热力学定律等.因为概率论中的“大数定律”不仅是在实践中总结出来的经验结论,而且也可以用数学工具严格地去证明,所以叫“大数定律”或叫“大数定理”都可以。
(一)、大数定理
R语言:假设投硬币,正面概率是0.5,投4次时,计算得到2次正面的概率?根据大数定律,如果投是10000次,计算5000次正面的概率?
#计算2次正面的的概率
> choose(4,2)/2^4 #choose组合数的计算:从4中选择2个
[1] 0.375
#计算5000次正面的的概率
> pbinom(5000, 10000, 0.5)
[1] 0.5039893
#pbinom二向分布,5000为分位数,产生10000个随机数,每个概率0.5
(二)、中心极限定理(central limit theorem)
中心极限定理是概率论中的一组定理。中心极限定理说明,大量相互独立的随机变量,其均值的分布以正态分布为极限。
1.林德伯格-列维(Lindburg-Levy)
是棣莫佛-拉普拉斯定理的扩展,讨论独立同分布随机变量序列的中央极限定理。它表明,独立同分布、且数学期望和方差有限的随机变量序列的标准化和以标准正态分布为极限:
棣莫佛-拉普拉斯(de Moivre - Laplace)定理是中央极限定理的最初版本,讨论了服从二项分布的随机变量序列。它指出,参数为n, p的二项分布以nρ为均值、nρ(1-ρ)为方差的正态分布为极限。
if (!require(animation)) install.packages("animation")
library(animation)
ani.options(interval = 0.1, nmax = 100)
par(mar = c(4, 4, 1, 0.5))
clt.ani()
#
1.library和require都可以载入包,但二者存在区别。在一个函数中,如果一个包不存在,执行到library将会停止执行,require则会继续执行。
require将会根据包的存在与否返回true或者false。
2.interval:a positive number to set the time interval of the animation (unit in seconds); default to be 1.
3.nmax:maximum number of steps in a loop (e.g. iterations) to create
animation frames. Note: the actual number of frames can be less than
this number, depending on specific animations. Default to be 50.
4.mar設置图形空白边界行数,mar = c(bottom, left, top, right)
5.clt.ani:Demonstration of the Central Limit Theorem
6.shapiro.test检验,P值大于0.05说明数据正态分布
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在当今数据驱动的时代,数据分析能力备受青睐,数据分析能力频繁出现在岗位需求的描述中,不分岗位的任职要求中,会特意标出“熟 ...
2025-04-03在当今数字化时代,数据分析师的重要性与日俱增。但许多人在踏上这条职业道路时,往往充满疑惑: 如何成为一名数据分析师?成为 ...
2025-04-02最近我发现一个绝招,用DeepSeek AI处理Excel数据简直太爽了!处理速度嘎嘎快! 平常一整天的表格处理工作,现在只要三步就能搞 ...
2025-04-01你是否被统计学复杂的理论和晦涩的公式劝退过?别担心,“山有木兮:统计学极简入门(Python)” 将为你一一化解这些难题。课程 ...
2025-03-31在电商、零售、甚至内容付费业务中,你真的了解你的客户吗? 有些客户下了一两次单就消失了,有些人每个月都回购,有些人曾经是 ...
2025-03-31在数字化浪潮中,数据驱动决策已成为企业发展的核心竞争力,数据分析人才的需求持续飙升。世界经济论坛发布的《未来就业报告》, ...
2025-03-28你有没有遇到过这样的情况?流量进来了,转化率却不高,辛辛苦苦拉来的用户,最后大部分都悄无声息地离开了,这时候漏斗分析就非 ...
2025-03-27TensorFlow Datasets(TFDS)是一个用于下载、管理和预处理机器学习数据集的库。它提供了易于使用的API,允许用户从现有集合中 ...
2025-03-26"不谋全局者,不足谋一域。"在数据驱动的商业时代,战略级数据分析能力已成为职场核心竞争力。《CDA二级教材:商业策略数据分析 ...
2025-03-26当你在某宝刷到【猜你喜欢】时,当抖音精准推来你的梦中情猫时,当美团外卖弹窗刚好是你想吃的火锅店…… 恭喜你,你正在被用户 ...
2025-03-26当面试官问起随机森林时,他到底在考察什么? ""请解释随机森林的原理""——这是数据分析岗位面试中的经典问题。但你可能不知道 ...
2025-03-25在数字化浪潮席卷的当下,数据俨然成为企业的命脉,贯穿于业务运作的各个环节。从线上到线下,从平台的交易数据,到门店的运营 ...
2025-03-25在互联网和移动应用领域,DAU(日活跃用户数)是一个耳熟能详的指标。无论是产品经理、运营,还是数据分析师,DAU都是衡量产品 ...
2025-03-24ABtest做的好,产品优化效果差不了!可见ABtest在评估优化策略的效果方面地位还是很高的,那么如何在业务中应用ABtest? 结合企业 ...
2025-03-21在企业数据分析中,指标体系是至关重要的工具。不仅帮助企业统一数据标准、提升数据质量,还能为业务决策提供有力支持。本文将围 ...
2025-03-20解锁数据分析师高薪密码,CDA 脱产就业班助你逆袭! 在数字化浪潮中,数据驱动决策已成为企业发展的核心竞争力,数据分析人才的 ...
2025-03-19在 MySQL 数据库中,查询一张表但是不包含某个字段可以通过以下两种方法实现:使用 SELECT 子句以明确指定想要的字段,或者使 ...
2025-03-17在当今数字化时代,数据成为企业发展的关键驱动力,而用户画像作为数据分析的重要成果,改变了企业理解用户、开展业务的方式。无 ...
2025-03-172025年是智能体(AI Agent)的元年,大模型和智能体的发展比较迅猛。感觉年初的deepseek刚火没多久,这几天Manus又成为媒体头条 ...
2025-03-14以下的文章内容来源于柯家媛老师的专栏,如果您想阅读专栏《小白必备的数据思维课》,点击下方链接 https://edu.cda.cn/goods/sh ...
2025-03-13