简单介绍一下R中的几种统计分布

统计学上分布有很多,在R中基本都有描述。因能力有限,我们就挑选几个常用的、比较重要的简单介绍一下每种分布的定义,公式,以及在R中的展示。

下面先列举各种分布:

rnorm(n, mean=0, sd=1) 高斯(正态)分布
rexp(n, rate=1) ?指数分布
rgamma(n, shape, scale=1) γ分布 

rpois(n, lambda) Poisson分布
rweibull(n, shape, scale=1) Weibull分布 
rcauchy(n, location=0, scale=1) Cauchy分布 
rbeta(n, shape1, shape2) β分布 
rt(n, df) t分布 
rf(n, df1, df2) F分布 
rchisq(n, df) χ 2 分布
rbinom(n, size, prob)二项分布 ?
rgeom(n, prob)几何分布
rhyper(nn, m, n, k) ?超几何分布
rlogis(n, location=0, scale=1) logistic分布
rlnorm(n, meanlog=0, sdlog=1)对数正态
rnbinom(n, size, prob)负二项分布
runif(n, min=0, max=1)均匀分布
rwilcox(nn, m, n), rsignrank(nn, n) Wilcoxon分布
注意了,上面的分布都有一个规律,就是所有的函数前面都有r开始,所以呢,如果想获得概率密度,就用替换

如果想获取累计概率密度,就用替换

如果想获取分位数,就用替换

 

二项分布:

即重复n次独立的伯努利试验。在每次试验中只有两种可能的结果,两种结果发生与否互相对立,并且相互独立,与其它各次试验结果无关,事件发生与否的概率在每一次独立试验中都保持不变,则这一系列试验总称为n重伯努利实验,当试验次数为1时,二项分布服从0-1分布。

公式:P(ξ=K)= C(n,k) * p^k * (1-p)^(n-k)

其中,P是成功的概率,n是n次独立重复实验,k是n次实验k次发生的概率

期望:Eξ=np

方差:Dξ=np(1-p)

二项分布在R中展现:

p=.4

K=200 

n=10000 

x=rbinom(n,k,p)

hist(x)


进行标准化处理:

mean=k*p

var=k*p*(1-p)

z=(x-mean)/sqrt(var)

hist(z)


绘制密度图

mean=k*p

var=k*p*(1-p)

z=(x-mean)/sqrt(var)

hist(z)


正态分布

正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线

随机变量X服从一个数学期望为μ、方差为σ^2的正态分布,记为N(μ,σ^2)

当μ = 0,σ = 1时的正态分布是标准正态分布

正态分布在R中的展现:

x=rnorm(k, mean=mean,sd=sqrt(var))

hist(x)


泊松分布:

是一种统计与概率学里常见到的离散概率分布,由法国数学家西莫恩·德尼·泊松(Siméon-Denis Poisson)在1838年时发表。

泊松分布的概率函数:

泊松分布的参数λ是单位时间(或单位面积)内随机事件的平均发生率。 泊松分布适合于描述单位时间内随机事件发生的次数。

泊松分布在R中的展现:

par(mfrow=c(2,2),mar = c(3,4,1,1))

lambda=.5

x=rpois(k, lambda)

hist(x)

lambda=1

x=rpois(k, lambda)

hist(x)

lambda=5

x=rpois(k, lambda)

hist(x)

lambda=10

x=rpois(k, lambda)

hist(x)


二项分布与泊松分布:

当二项分布的n很大而p很小时,泊松分布可作为二项分布的近似,其中λ为np。通常当n≧10,p≦0.1时,就可以用泊松公式近似得计算。

par(mfrow=c(3,3),mar = c(3,4,1,1))

k=10000 

p=c(.5, .05, .005)

n=c(10,100,1000)

for (i in p){

  for (j in n){

    x=rbinom(k,j,i)

    hist(x)

  }}


卡方分布:

若n个相互独立的随机变量ξ?、ξ?、……、ξn ,均服从标准正态分布(也称独立同分布于标准正态分布),则这n个服从标准正态分布的随机变量的平方和构成一新的随机变量,其分布规律称为卡方分布(chi-square distribution)。

卡方分布是由正态分布构造而成的一个新的分布,当自由度n很大时,

 分布近似为正态分布。

卡方分布在R中的展示:

k=10000

par(mfrow=c(2,2),mar = c(3,4,1,1))

x=rchisq(k,2)

d=density(x)

plot(d)

x=rchisq(k,5)

d=density(x)

plot(d)

x=rchisq(k,100)

d=density(x)

plot(d)

x=rchisq(k,1000)

d=density(x)

plot(d)


F分布:

F分布定义为:设X、Y为两个独立的随机变量,X服从自由度为k1的卡方分布,Y服从自由度为k2的卡方分布,这2 个独立的卡方分布被各自的自由度除以后的比率这一统计量的分布。即: F分布是服从第一自由度为k1,第二自由度为k2的分布。

k=10000

par(mfrow=c(2,2),mar = c(3,4,1,1))

x=rf(k,1, 100)

hist(x)

x=rf(k,1, 10000)

hist(x)

x=rf(k,10, 10000)

hist(x)

x=rf(k,10000, 10000)

hist(x)


t分布:

t分布曲线形态与n(确切地说与自由度v)大小有关。与标准正态分布曲线相比,自由度v越小,t分布曲线愈平坦,曲线中间愈低,曲线双侧尾部翘得愈高;自由度v愈大,t分布曲线愈接近正态分布曲线,当自由度v=∞时,t分布曲线为标准正态分布曲线。

k=10000

par(mfrow=c(2,2),mar = c(3,4,1,1))

x=rt(k,2)

hist(x)

x=rt(k,5)

hist(x)

x=rt(k,10)

hist(x)

x=rt(k,100)

hist(x)


几种分布关系图示:


i2mean=function(x,n=10){

  k=length(x)

  nobs=k/n

  xm=matrix(x,nobs,n)

  y=rowMeans(xm)

  return (y)

}

par(mfrow=c(5,1),mar = c(3,4,1,1))

#Binomia

p=.05

n=100 

k=10000

x=i2mean(rbinom(k, n,p))

d=density(x)

plot(d,main="Binomial")

#Poisson

lambda=10

x=i2mean(rpois(k, lambda))

d=density(x)

plot(d,main="Poisson")

#Chi-Square

x=i2mean(rchisq(k,5))

d=density(x)

plot(d,main="Chi-square")

#F

x=i2mean(rf(k,10, 10000))

d=density(x)

plot(d,main="F dist")

#t

x=i2mean(rt(k,5))

d=density(x)

plot(d,main="t dist")

来源于:砍柴问樵夫

时间: 2024-10-14 05:28:24

简单介绍一下R中的几种统计分布的相关文章

简单介绍下微信中如何查看对方是否将你拉黑删除?

现如今微信使用的人越来越多,朋友圈中的好友也有成百个了,有很多人长时间不联系了,想知道对方是否将你拉黑删除了吗?那在微信上如何查看清理那些把你删除的好友呢?我们一起来学习下. 微信上如何查看清理那些把你删除的好友? 第一种:单个发送信息 向好友发送一条消息,验证好友是否将你删除,如果删除,系统会提示你还不是他(她)的好友,请发送好友验证请求,验证请求通过后,才能聊天.经过确认后可以果断删除该好友了,因为他已经将你删除. 第二种:查看好友相册 点击好友信息,查看好友个人相册,如果个人相册为空,一种

简单阐述下OC中UIImage三种创建方式~~~

一. 直接使用imageNamed进行创建 1 UIImage * image = [UIImage imageNamed:@"1.jpg"]; 简单说一下这种方式的优缺点: 优点:代码量少,一行代码就可以搞定.当程序中多次加载这张图片时,系统会指向同一块内存,这样可以提升效率. 缺点:系统每次会将图片缓存到计算机的内存中去,如果图片非常大,非常多,会消耗很大的计算机内存,会出现卡顿的现象. 二.将本地图片转换成NSData类型存储 1 NSString *filePath = [[N

简单介绍下python中函数的基础语法

python 函数 定义 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 特性 减少代码重复 使程序变得可扩展 使程序变得易于维护 函数的创建 python中创建函数,需要使用__def__关键字,后面写函数的名字,然后是形参列表,大体如下: def 函数名(形参列表): 函数体...... return 返回值 其中形参列表和 return返回值并不是必须的. 函数的使用 想要调用函数程序,需要以函数名加括号的形式进行调用,而括号内可以传入参数

JavaScript中的三种弹出对话框

JavaScript中的三种弹出对话框 *****本文来自互联网****** 学习过js的小伙伴会发现,我们在一些实例中用到了alert()方法.prompt()方法.prompt()方法,他们都是在屏幕上弹出一个对话框,并且在上面显示括号内的内容,使用这种方法使得页面的交互性更精彩,实际上我们经常会在进行网页浏览时简单这种类型的对话框,在用户与应用程序进行双向交流时,经常要用到对话框.avascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prom

Android中Intent具体解释(二)之使用Intent广播事件及Broadcast Receiver简单介绍

通过第一篇的解说,我们已经看到了怎样使用Intent来启动新的应用程序组件,可是实际上他们也能够使用sendBroadcast方法来在组件间匿名的广播消息. 作为一个系统级别的消息传递机制,Intent能够在进程之间发送结构化的消息. 因此,通过实现Broadcast Receiver来监听和响应应用程序内的这些Broadcast Intent. 通过使用Intent来广播一个事件,能够在不改动原始的应用程序的情况下.让我们开发者对事件做出反应.Android大量使用了Broadcast Rec

iOS开发数据库篇—SQLite简单介绍

转自:http://www.cnblogs.com/wendingding/p/3868893.html 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1)归档:NSCodeing.NSKeyedArchiver (2)偏好设置:NSUserDefaults (3)Plist存储:writeToFile 提示:上述三种方法都有一个致命的缺点,那就是都无法存储大批量的数据,有性能的问题.

BPMN规范中的三种视图

诚如UML建模所带来的好处一样,对流程建模规范BPMN也同样带来了类似好处,此外BPMN还通过一套统一的建模.执行模型缩小了业务人员和开发人员之间的一道鸿沟,而其终极目标也包含消除这道鸿沟.亦如UML用十四种图来描述一个系统的不同方面,对于BPM而言,BPMN提供了三种基本类型的流程视图,而这也成为不同角色之间交流业务流程.创建端到端的业务流程的基础.本文将简单描述这几种流程视图_--协作视图(Collaboration).流程视图(process).编排视图(choreography). 协作

简单介绍Javascript匿名函数和面向对象编程

忙里偷闲,简单介绍一下Javascript中匿名函数和闭包函数以及面向对象编程.首先简单介绍一下Javascript中的密名函数. 在Javascript中函数有以下3中定义方式: 1.最常用的定义方式: function functionVal(variable){ return 3*variable; } 2.使用Function构造函数,将函数的参数和函数体内容作为字符串参数[不建议使用]: var objFunction=new Function('variable','return 3

【转】 iOS开发数据库篇—SQLite简单介绍

开始学SQLite啦, 原文: http://www.cnblogs.com/wendingding/p/3868893.html iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1)归档:NSCodeing.NSKeyedArchiver (2)偏好设置:NSUserDefaults (3)Plist存储:writeToFile 提示:上述三种方