p 值计算(置信度)

这篇具有很好参考价值的文章主要介绍了p 值计算(置信度)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、p值的概念

p 值计算(置信度)

参考 【科研新手必学】手把手教你统计学的P值含义和检验假设

p 值计算(置信度)
p 值计算(置信度)

下图中,μ0 表示整个地区的总体均值,μ 表示整个矿区的整体均值, X ‾ \overline{X} X 表示矿区抽样的均值

  • H0是无效假设(原假设),即,矿区的均值和该地区的均值其实是一样的,只是因为抽样误差而导致的(即矿区的样本是整个地区样本的一部分)
  • H1是备择假设,即,矿区的数据分布和整个地区的数据分布是完全不同的,两者均值本身就不相等。所以从矿区中抽样出来的均值自然和整个地区的均值不同,即矿区影响了新生儿头围的发育
    p 值计算(置信度)
    p 值计算(置信度)

p 值计算(置信度)

如下图所示,S 表示标准差,n 表示样本数
p 值计算(置信度)
p 值计算(置信度)
注意,这里需要对 μ 取绝对值,即 μ=2.273,2.273是介于 1.96 到 2.58 之间,所以 p 值介于 0.01 到 0.05 之间

  • μ 越大,p 越小;μ越小,p越大
    p 值计算(置信度)
    接受 H1 即表示:矿区新生儿的头围,和全地区的数据,是不一致的
    p 值计算(置信度)

如下图所示,即表示,H0的零假设其实就是假设 “没有差别”,拒绝了 “没有差别” 的假设,那结论自然就是 “有差别”
p 值计算(置信度)

p 值计算(置信度)

参考:【统计】从P值到6σ(六西格玛)质量控制(P值与Z值,与置信水平的关系,python scipy 计算)

p 值计算(置信度)

下图中,z=1.96 表示,距离均值 1.96 个标准差
p 值计算(置信度)

In [88]: from scipy.stats import norm

In [89]: help
Out[89]: Type help() for interactive help, or help(object) for help about object.

In [90]: help(norm.cdf)


In [91]: norm.cdf(1.96)
Out[91]: 0.9750021048517795

In [92]: norm.cdf(-1.96)
Out[92]: 0.024997895148220435

In [93]: norm.cdf(1.96)-norm.cdf(-1.96)
Out[93]: 0.950004209703559


# 参考 https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.t.html
# sf = 1 - cdf
# 注意下面的参数 df 表示自由度
In [113]: 1-scipy.stats.t.sf(1.67, df=1)
Out[113]: 0.8282595795437305

In [114]: scipy.stats.t.cdf(1.67, df=1)
Out[114]: 0.8282595795437305

二、T检验

参考:

  • (知乎) 一文详解t检验 ⭐️⭐️⭐️⭐️⭐️)
  • (知乎) t检验自由度如何选择?⭐️⭐️⭐️
    p 值计算(置信度)
    p 值计算(置信度)

关于 两个样本均值之差的分布:

p 值计算(置信度)

参考:

  • T检验、T分布、T检验的计算方法
    p 值计算(置信度)

如下图,T分布的自由度 df 越大,则越趋近于正态分布
p 值计算(置信度)

三、实际计算

在做AB实验时,经常需要计算实验的p值,当p<0.05时,表示该实验的结论是置信的(原假设是实验组和基线没有差别,备择假设是实验组和基线有差别,当p<0.05时,即接受备择假设,即表示实验组和基线有区别)

""" 
t 检验, T 检验用于确定两个变量的均值之间是否存在显著差异,并判断它们是否属于同一分布。
"""
from scipy.stats import t  


def adv_test(self, num_base, mu_base, var_base, num_exp, mu_exp, var_exp, alpha=0.05, beta=0.8):
	"""
	官方文档 https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.t.html
	exp 后缀表示实验组,base 后缀表示基线组
	"""
    num = num_exp + num_base
    mu = mu_exp - mu_base
    mu_ratio = float(mu_exp)/float(mu_base)-1
    # print("mu_exp: {}, mu_base: {}".format(mu_exp, mu_base))
    var = var_exp / num_exp + var_base / num_base
    t_value = mu / np.sqrt(var)

    # 自由度 degrees of freedom,当自由度足够大时,计算出来的p值几乎没有差别
    df = num - 1
    # df = var**2 / ((var_exp**2)/(num_exp**2 * (num_exp-1)) + (var_base**2) / (num_base**2 * (num_base-1)))
    print("mu: {}, var: {}, t_value: {}, df: {}".format(mu, var, t_value, df))
    # 这里 t.sf = 1-t.cdf,t.sf 的第二个参数是 df,即自由度(df, degrees of freedom)
    pvalue = t.sf(t_value, df)
    half_alpha_percentile = t.isf(alpha / 2, df)
    lower_bound = mu - half_alpha_percentile * np.sqrt(var)
    upper_bound = mu + half_alpha_percentile * np.sqrt(var)
    mde = (t.isf(alpha / 2, num - 2) - t.isf(beta, num - 2)) * np.sqrt(var)
    # return pvalue, lower_bound, upper_bound, mu
    return pvalue, lower_bound, upper_bound, mu_ratio

"""
######### arpu 相对值 #######
# old_df,自由度 df=num-1
mu: 0.007, var: 0.00119234226134, t_value: 0.202720454552, df: 26764544
In [193]: 0.007 / np.sqrt(0.00119234226134)
Out[193]: 0.20272045455163987

In [179]: t.sf(0.202720454552, 26764544)
Out[179]: 0.4196767681194182


# new_df,自由度 df=var**2 / ((var_exp**2)/(num_exp**2 * (num_exp-1)) + (var_base**2) / (num_base**2 * (num_base-1)))
mu: -0.007, var: 0.00119234226134, t_value: -0.202720454552, df: 8170882.10005
In [180]: t.sf(0.202720454552, 8170882.10005)
Out[180]: 0.4196767698726953

######### arpu 绝对值 #######
# old_df,自由度 df=num-1
mu: 0.16, var: 0.624730231747, t_value: 0.2024294622, df: 26764544
In [194]: 0.16 / np.sqrt(0.624730231747)
Out[194]: 0.20242946219986416

In [190]: t.sf(0.2024294622, 26764544)
Out[190]: 0.41979049958805537


# new_df,自由度df=var**2 / ((var_exp**2)/(num_exp**2 * (num_exp-1)) + (var_base**2) / (num_base**2 * (num_base-1)))
mu: 0.16, var: 0.624730231747, t_value: 0.2024294622, df: 8170882.10005
In [191]: t.sf(0.2024294622, 8170882.1005)
Out[191]: 0.4197905013387206


#################### 结论 #####################
1. 使用arpu 绝对值 还是 相对值,计算出来的p值没有差异
2. 使用新版的 df 计算方法,p值也没有差异(当自由度足够大时,对p值计算几乎没有影响了,因为当自由度足够大时,已经趋近于正态分布,算出来的面积已经基本是不变的常数了)
"""

关于 自由度 df 的理解

  • 根据谢宇老师《回归分析》一书中的介绍:自由度是通过样本统计量来估计总体参数时必须涉及的一个基本概念,指的是计算样本统计量时能自由取值的数值个数。当做t检验时,是用样本方差去对总体方差进行估计。需要变量减去观测样本的均值,故而样本中只有n-1个自由取值。确定了n-1个数,基于均值,第n个数就确定了。所以一般来讲,丧失的自由度数目也就是需要估计的参数的数目,或者约束条件的数目。

其他参考文章来源地址https://www.toymoban.com/news/detail-482398.html

  • 维基百科 学生t-分布
  • python绘制正态分布及三大抽样分布的概率密度图像(一)
  • 官方文档 scipy.stats.t

到了这里,关于p 值计算(置信度)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • YOLOv5改进训练过程中置信度损失上升

            最近需要对yolov5网络框架进行改进,改进训练的过程当中发现了一个奇怪的问题。        从tensorboard的图像过程中看出,bbox_loss,cls_loss在训练预测之后正常下降,当时obj_loss置信度损失值在上升。这可把我给困住了,各方面都没有问题,困扰好久。       

    2024年02月08日
    浏览(48)
  • t分布95%的置信度,相关系数是多少的问题

    在概率论和统计学中,t-分布(t-distribution)用于根据 小样本 来估计呈正态分布且方差未知的总体的均值。如果总体方差已知(例如在样本数量足够多时),则应该用正态分布来估计总体均值。 t分布95%的置信度,相关系数是 1.96 ,因为 t 分布于自由度有关,置信度对应下的

    2024年02月12日
    浏览(49)
  • YOLOv8 推理脚本--置信度保留多位浮点数 & 特征图可视化

    特征图可视化: 4位浮点数: 原始2位浮点数 4位浮点数 在进行改动前,请大家先阅读下 基础入门篇 | YOLOv8 项目【训练】【验证】【推理】最简单教程 | YOLOv8必看 | 最新更新,直接打印 FPS,mAP50,75,95 ,确保会用我给的推理脚本。 YOLO( ) :这里写你推理使用的

    2024年04月11日
    浏览(93)
  • 【海量数据挖掘/数据分析】 之 关联规则挖掘 Apriori 算法 (数据集、事务、频繁项集、关联规则、支持度、置信度)

    目录 【海量数据挖掘/数据分析】 之 关联规则挖掘 Apriori 算法 (数据集、事务、频繁项集、关联规则、支持度、置信度) 一、 关联规则挖掘简介 二、 数据集 与 事务 ( Transaction ) 概念 三、项 ( Item ) 概念 四、项集 ( Item Set ) 概念 五、频繁项集 六、数据集、事物、项、项集

    2024年02月05日
    浏览(70)
  • 数据关联规则:概述【频繁项集评估标准:支持度(support)、置信度(confidence)、提升度(lift)】【算法:Aprior、FP-Tree、GSP、CBA】

    关联规则(Association Rules)是反映一个事物与其他事物之间的相互依存性和关联性,是数据挖掘的一个重要技术,用于从大量数据中挖掘出有价值的数据项之间的相关关系。 该过程通过发现顾客放人其购物篮中的不同商品之间的联系, 分析顾客的购买习惯 。通过了解哪些商品频

    2024年02月06日
    浏览(54)
  • 【从零开始学习JAVA | 第三十二篇】 异常(下)新手必学!

    目录 前言:  Exceptions(异常): 异常的两大作用: 异常的处理方式: 1.JVM默认处理  2.自己捕获异常 3.抛出处理 自定义异常: 异常的优点: 总结:         前文我们详细的为大家介绍了整个异常体系的框架,本篇我们将为大家介绍 Exceptions 异常,我们会讲解他的作用以及

    2024年02月15日
    浏览(69)
  • 【计算机网络笔记】TCP/IP参考模型基本概念,包括五层参考模型

    什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率 计算机网络体系结构概念 OSI参考模型

    2024年02月05日
    浏览(44)
  • 【前端工程化】配置package.json中scripts命令脚本,新手必学

    每日鸡汤:你总要努力追上那个曾经被赋予众望的自己吧 目录 前言 一、运行npm run 命令之后会干啥? 1. scripts里面写啥 2. node_modules/.bin 二进制可执行文件 二、运行插件配置 1. 运行某个npm包的命令 2. 多个命令一起运行  总结 配置package.json中scripts脚本是node开发中第一技能。

    2024年02月05日
    浏览(41)
  • 计算机网络课程 day1 基本概念-交换机-路由器 计算机网络的参考模型

    目录 学习计算机网络课程的目标和意义:  计算机网络的基本概念 常用网络设备: network device 交换机:组建局域网使用的,将很多电脑连接起来,组成一个局域网络,可以一起打游戏/上网 路由器:实现跨网段通信使用,把网络里的数据从一个地方转发到另一个地方。可以

    2024年02月13日
    浏览(60)
  • 科研 | Zotero导入无PDF的参考文献、书籍

    最近在用Zotero在Word中插入参考文献的时候发现,有些没在网上找到对应的PDF版本,但也不是必须要PDF版本的参考文献或者参考书籍,如何才能不影响正常的文献排版 主要是先在网上找到对应文献,书籍,网页等的ISBN,DOI,PMID,arXiv ID ,ADS条码等来添加条目到Zotero中~

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包