统计| p值的计算

p值的计算,R语言和python的实现

今天来说说频率中假设检验要依赖的评估指标:p值,对,你也许很清楚的知道它表达的意思,但是它是怎么算得的呢?不知道你是否知道呢?这次将介绍几种分布计算p值的方法(套路)。

这里以两样本均值的假设检验为例来说明。要介绍的分布有:

  • 正态分布

  • t分布

设两样本分别为 X Y,基于中心极限定理,无论 X Y属于什么分布,只要样本量足够大,它们的均值服从正态分布。由于两者是独立样本,故而它们均值之也服从正态分布。

1、大样本情况下
设样本 X x1x2xn,样本 Y y1y2ym,它们的均值分布为: x¯y¯ ,方差为 S2xnS2ym

那么对应的统计量为:

Z=x¯y¯S2xn+S2ymN(0,1)

假设检验的介绍看博客:http://blog.csdn.net/xxzhangx/article/details/67640775

p值是说在原假设成立的条件下,原假设发生的概率,若是p值小于0.05,发生概率小于0.05时,认为是小概率发生了,即是差异性显著,拒绝原假设。

公式:
双边假设的p值:

p=P(z<|x¯y¯S2xn+S2ym|)

代码

> x <- 0.3
> y <- 0.5 
> sx <- 3
> sy <- 5
> nx <- 10000
> ny <- 20000
> z <- (x-y)/(sqrt(sx^2/nx + sy^2/ny))
> p = 2*pnorm(-abs(z))
> p

结果:
[1] 1.608277e-05

2、小样本情况下:

  • 方差相等
  • 方差不等

方差相等时,

方差不等时:

> m1 <- c(10)
> m2 <- c(13)
> sd1 <- c(3)
> sd2 <- c(5.3)
> num1 <- c(300)
> num2 <- c(230)
> se <- sqrt(sd1*sd1/num1+sd2*sd2/num2)
> t <- (m1-m2)/se
> 2*pt(-abs(t),df=pmin(num1,num2)-1)

结果:
[1] 4.280554e-13

  • 10
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值