Permutation Test 置换检验

2023-05-16

显著性检验通常可以告诉我们一个观测值是否是有效的,例如检测两组样本均值差异的假设检验可以告诉我们这两组样本的均值是否相等(或者那个均值更大)。我们在实验中经常会因为各种问题(时间、经费、人力、物力)得到一些小样本结果,如果我们想知道这些小样本结果的总体是什么样子的,就需要用到置换检验。

Permutation test 置换检验是Fisher于20世纪30年代提出的一种基于大量计算(computationally intensive),利用样本数据的全(或随机)排列,进行统计推断的方法,因其对总体分布自由,应用较为广泛,特别适用于总体分布未知的小样本资料,以及某些难以用常规方法分析资料的假设检验问题。在具体使用上它和Bootstrap Methods类似,通过对样本进行顺序上的置换,重新计算统计检验量,构造经验分布,然后在此基础上求出P-value进行推断。

下面通过一个简单例子来介绍Permutation test的思想。

假设我们设计了一个实验来验证加入某种生长素后拟南芥的侧根数量会明显增加。A组是加入某种生长素后,拟南芥的侧根数量;B是不加生长素时,拟南芥的侧根数量(均为假定值)。

A组侧根数量(共12个数据):24 43 58 67 61 44 67 49 59 52 62 50

B组侧根数量(共16个数据):42 43 65 26 33 41 19 54 42 20 17 60 37 42 55 28

我们来用假设检验的方法来判断生长素是否起作用。我们的零假设为:加入的生长素不会促进拟南芥的根系发育。在这个检验中,若零假设成立,那么A组数据的分布和B组数据的分布是一样的,也就是服从同个分布。

接下来构造检验统计量——A组侧根数目的均值同B组侧根数目的均值之差。

statistic:= mean(Xa)-mean(Xb)

对于观测值有 Sobs:=mean(Xa)-mean(Xb)=(24+43+58+67+61+44+67+49+59+52+62+50)/12-(42+43+65+26+33+41+19+54+42+20+17+60+37+42+55+28)/16=14

我们可以通过Sobs在置换分布(permutation distribution)中的位置来得到它的P-value。

Permutation test的具体步骤是:

1.将A、B两组数据合并到一个集合中,从中挑选出12个作为A组的数据(X'a),剩下的作为B组的数据(X'b)。

Gourp:=24 43 58 67 61 44 67 49 59 52 62 50 42 43 65 26 33 41 19 54 42 20 17 60 37 42 55 28

挑选出 X'a:=43 17 44 62 60 26 28 61 50 43 33 19

X'b:=55 41 42 65 59 24 54 52 42 49 37 67 67 20 42 58

2.计算并记录第一步中A组同B组的均值之差。Sper:=mean(X'a)-mean(X'b)= -7.875

3.对前两步重复999次(重复次数越多,得到的背景分布越”稳定“)

这样我们得到有999个置换排列求得的999个Sper结果,这999个Sper结果能代表拟南芥小样本实验的抽样总体情况。

permutation test

permutation test

如上图所示,我们的观测值 Sobs=14 在抽样总体右尾附近,说明在零假设条件下这个数值是很少出现的。在permutation得到的抽样总体中大于14的数值有9个,所以估计的P-value是9/999=0.01

最后还可以进一步精确P-value结果(做一个抽样总体校正),在抽样总体中加入一个远大于观测值 Sobs=14的样本,最终的P-value=(9+1)/(999+1)=0.01。(为什么这样做是一个校正呢?自己思考:))

结果表明我们的原假设不成立,加入生长素起到了促使拟南芥的根系发育的作用。

参考资料:

1. http://bcs.whfreeman.com/ips5e/content/cat_080/pdf/moore14.pdf

2. http://jpkc.njmu.edu.cn/course/tongjixue/file/jxzy/tjjz02.htm

3. http://www.r-bloggers.com/lang/chinese/541

 

来源:https://www.plob.org/article/3176.html

 

大数定理:

当样本量足够多时,样本发生的频率近似于概率。

 

中心极限定理:  

中心极限定理以严格的数学形式阐明了在大样本条件下,不论总体的分布如何,样本的均值总是近似地服从正态分布。如果一个随机变量能够分解为独立同分布的随机变量序列之和,则可以直接利用中心极限定理进行解决。总之,恰当地使用中心极限定理解决实际问题有着极其重要意义。

 

假设检验:检验量:样本均值的分布;样本均值的比较。

 

置换检验(非参数检验)

当样本量不够大,样本分布未知的情况下;用置换检验模拟出样本均值分布,然后再进行比较

in detials:

两组数据:A:样本量n;B:样本量m,总体样本数量:n+m

则从n+m个样本中随机抽取n个值,计算出样本均值,然后重复此过程i次(i=1000),得到样本均值的分布情况,然后将A样本均值与得到的分布进行比较。则可以进行假设检验。

 

从n+m个样本中随机抽n个的为A,剩下m为B,计算两组差异,重复次过程i次,得到差异的分布情况,将实际差异与分布情况进行比较。

 

attention:模拟数据,想法与置换检验有相似点。去除掉混淆因素。

 https://en.wikipedia.org/wiki/Resampling_(statistics)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Permutation Test 置换检验 的相关文章

  • iOS 4.5.5版本 被拒绝!!!! "App Rejected : non-public APIs"

    今天上午收到邮件说是被拒绝了 原文是 这一版本 我就添加一个购买sku的方法 并没有添加什么库 简简单单的一次升级给我出一私有方法拒绝 在xcode8 iOS10 刚出来 苹果新规则进一步丰富 出现这种意外的问题 一定不只我一个 的确 我在
  • 删除文件夹及其子文件

    rm rf 目录 转载于 https www cnblogs com tiandsp archive 2012 07 09 2583207 html
  • 树莓派练习程序(土壤湿度检测)

    土壤湿度检测模块如下 xff1a 树莓派的引脚如下图 xff1a 我们将Vcc引脚连接物理接口2 xff0c GND引脚连接物理接口39 xff0c DO引脚连接物理接口40 实物连接如下图 xff1a 编程使用WiringPi库 xff0
  • 搞定面试问题-进程、线程、协程

    关于进程 xff0c 线程 xff0c 协程是面试中经常可见的问题 xff0c 接下来这篇文章帮你梳理一下 xff0c 让你轻松应对面试官 1 xff0c 什么是进程 一个程序的执行实例就是一个进程 每一个进程提供执行程序所需的所有资源 x
  • OVN 架构分析

    架构分析Base flow L2 L3 forwardingOVN L2 gateway OVN 是 Open vSwitch 社区在 2015 年 1 月份才宣布的一个子项目 xff0c OVN 使用 Open vSwitch功能提供一个
  • fyi 在邮件里是什么意思_FYI的完整形式是什么?

    fyi 在邮件里是什么意思 仅供参考 xff1a 供您参考 FYI For Your Information FYI is an acronym of 34 For Your Information 34 It is a widesprea
  • Maven war包相互依赖

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 假设有两个war包 xff1a A和B A又依赖于B 根据Java规范 xff0c classpath不能指定WAR文件 这就意味着在编译时 xff0c A项目无法访问B项
  • 没事儿乱冒点皮皮

    快一个月没写Blog了 xff0c 这段时间忙着应付考试 xff0c 也就没花太多的时间管这些 前天刚刚考完四级 xff0c 感觉还不错 xff0c 希望能过吧 xff0c 虽然这次我还是没怎么努力学英语 xff0c 如果说真的过了 xff
  • AutoLISP对话框DCL按钮Button设计实例

    AutoLISP对话框DCL按钮设计实例 xff0c 绘制三种形式的图形 xff0c DCL对话框设计代码如下 dia5b dialog label 61 34 按钮测试 34 boxed row label 61 34 图形尺寸 34 e
  • 教你如何修改运行中的docker容器的端口映射

    在docker run创建并运行容器的时候 xff0c 可以通过 p指定端口映射规则 但是 xff0c 我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改 当docker start运行容器后并没有提供一个 p选项或设置 xff0c
  • svn status 显示 ~xx

    版本控制下的项目与其它类型的项目重名
  • python键盘输入转换为列表_Python键盘输入转换为列表的实例

    Python键盘输入转换为列表的实例 发布时间 xff1a 2020 08 19 12 58 38 来源 xff1a 脚本之家 阅读 xff1a 92 作者 xff1a 清泉影月 Python输入字符串转列表是为了方便后续处理 xff0c
  • 如何调试带有源代码的dll文件

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 工作环境 xff1a dll源代码是c xff0c 在Visual studio 2010中调试 第一步 xff0c 调试的准备 用C 语言编写一个测试dll文件的程序 x
  • (网上搜集)金蝶报错:名称或代码在系统中已被使用

    KIS专业版 修正核算项目关系 select from t itemdetail exec sp cleanitemdetailv GO update a set a fdetailcount 61 b Fcount from t item
  • Xmanager 远程连接linux ubuntu桌面操作系统

    Xmanager 远程连接linux ubuntu桌面操作系统 Xmanager 下载地址 url http dl pconline com cn download 53773 html url 1 ubuntu desk操作系统的配置 系
  • c语言中strtok函数_在C语言中使用strtok()和strtok_r()函数

    c语言中strtok函数 In this article we ll take a look at using the strtok and strtok r functions in C 在本文中 xff0c 我们将介绍如何在C语言中使用
  • Qt QTreeWidget节点的添加+双击响应+删除详解

    QTreeWidget是实现树形结构的类 xff0c 在很多软件中都可以看到类似树形结构的界面 我做的一个示例如下图 xff0c 用来处理图像 xff0c 最顶层节点是图像的路径名 xff0c 子节点是图像的各个波段 xff0c 双击各个波
  • 【转】如何使用分区助手完美迁移系统到SSD固态硬盘?

    自从SSD固态硬盘出世以来 xff0c 一直都被持续关注着 xff0c SSD的性能优势让无数用户起了将操作系统迁移到SSD的心思 xff0c 直接后果就是让无数机械硬盘为止黯然退场 xff0c 很多软件都可以做到系统迁移 xff0c 然而
  • Python中import的使用

    python中的import语句是用来导入模块的 xff0c 在python模块库中有着大量的模块可供使用 xff0c 要想使用这些文件需要用import语句把指定模块导入到当前程序中 import语句的作用 import语句作用就是用来导
  • android studio 安卓集成高德地图获取app定位信息

    在网上搜索过大量集成高德地图的方案 xff0c 和测试代码 xff0c 要么就是博主抄来没有测试过的代码 xff0c 要么就是步骤不连续的 xff0c 甚至包裹官网给出的解决方案都是欠缺相关步骤的 xff08 官网截图都不知道多少年前的了

随机推荐

  • Mac操作系统下怎么显示隐藏文件

    方法一 xff1a 第一步 xff1a 打开 终端 应用程序 第二步 xff1a 输入如下命令 xff1a defaults write com apple finder AppleShowAllFiles boolean true kil
  • Linux : brctl not found

    Getting this error message while trying to bring up your newly configured bridge interface on RHEL CentOS Linux You are
  • 查看supervisor启动日志

    2019独角兽企业重金招聘Python工程师标准 gt gt gt tail f var log messages 转载于 https my oschina net u 3371661 blog 3045059
  • 嵌入式就业前景怎么样?嵌入式工作该如何分类?

    随着科技进步 xff0c 嵌入式的出现 xff0c 以及人们对生活质量 xff0c 产品的智能化 xff0c 成本的要求等 xff0c 以及国家对与物联网 电子 科技的扶持 xff0c 大量的电子产品都促使嵌入式的快速发展 嵌入式涵盖了微电
  • 【vivado】ILA调试报错 The debug hub core was not detected 以及 Data read from hw_ila [hw_ila_1] is corrupted...

    报错一 xff1a WARNING Labtools 27 3361 The debug hub core was not detected Resolution 1 Make sure the clock connected to the
  • 面试题:你在项目中遇到哪些问题?

    你在项目中遇到哪些问题 xff1f 因为目前项目采用的是分布式 xff0c 分布式环境下一般采用集群方案 xff0c 所以这就会带来分布式的一些问题 xff0c 比如 xff1a 1 分布式锁 2 分布式session 3 分布式全局id
  • 检查 ubuntu 版本_如何检查Ubuntu版本–快速简便的方法

    检查 ubuntu 版本 In this tutorial we will go over the easiest methods to check Ubuntu version from the terminal You can use
  • hashheap python 实现

    class Node object 34 34 34 the type of class stored in the hashmap in case there are many same heights in the heap maint
  • Cocos Creator 实现大厅+子游戏模式

    大厅 43 子游戏的模式 xff0c 在棋牌类型 教育类型游戏中比较常见 xff0c 通常是安装包里面只有大厅的资源和代码 xff0c 然后子游戏根据需求以热更新的方式下载来提供给玩家 之前一直负责的是cocos2dx lua的开发 xff
  • matlab练习程序(Kruskal最小生成树)

    老物了 xff0c 网上的例子多的数不过来 不过我还是有必要练习一下的 之所以看这个算法是因为最近在看颜色聚合向量时 xff0c 有的论文用到了最小生成树 xff0c 因此我就拿来熟悉一下 Kruskal算法类似于连通分支算法 xff0c
  • Ubuntu18.04创建新的系统用户

    目标 xff1a 1 为测试学习Docker xff0c 在虚拟机OS为18 04里 xff0c 创建一个系统账号 xff0c 账号名称 xff1a docker 2 在 home下有新建username的文件夹 一 建立账号 1 以roo
  • gooreplacer 很好用

    国内上 StackOverflow hackernews 之类的站点会慢 因为页面里有链接指向 google 谷歌 会被墙 于是拖累了整个页面的显示 gooreplacer 可以把这些被墙连接替换掉 安装方法的话 xff0c 在浏览器的安装
  • vscod 技巧,自动循环书写li

    ul gt li 10 这是第 个li lt ul gt lt li gt 这是第1个li lt li gt lt li gt 这是第2个li lt li gt lt li gt 这是第3个li lt li gt lt li gt 这是第4
  • Ai challenger 2017 image caption小结

    参加了今年的 ai challenger 的 image caption比赛 xff0c 最终很幸运的获得了第二名 这里小结一下 Pytorch 越来越火了 前五名有三个 pytorch xff0c 两个 tensorflow 关于哪个 l
  • 哥很无奈 今天看到我的host文件是这个样子

    127 0 0 1 www gtxp2 com 这家无良公司在所谓的网维工具内加入了屏蔽我站的信息 xff0c 我们也是不得已做出反击 xff0c 望见者谅解 127 0 0 1 gtxp2 com 封死此无良网站 xff0c B4此站的相
  • [转载] 以下划线开头的变量

    转自 xff1a https blog csdn net Grevi article details 60581354 今天在公司看 GNU ISO C 43 43 Library库中的stl库时 xff0c 偶然间感觉到一个问题 xff0
  • 如果编程语言是武侠

    如果是武功 C紫霞神功要大成需要很长时间 xff0c 威力还行Cpp九阳神功威力巨大Lisp小无相功你可以把它当做任何武功Shell太极拳四两拨千斤PHP打狗棒法不上台面 xff0c 但威力惊人Java八荒六合唯我独尊神功 无敌C 北冥神功
  • 跳转位置-更改目录(CD)PowerShell命令,可让您读懂

    There 39 s a lovely little utility called autojump for nix consoles that makes the 39 cd 39 command very smart More that
  • C#结构体指针的定义及使用详解

    在解析C 结构体指针前 xff0c 必须知道C 结构体是如何定义的 在c 中同样定义该结构体 C 结构体指针之C 结构体的定义 xff1a StructLayout LayoutKind Sequential public struct V
  • Permutation Test 置换检验

    显著性检验通常可以告诉我们一个观测值是否是有效的 xff0c 例如检测两组样本均值差异的假设检验可以告诉我们这两组样本的均值是否相等 xff08 或者那个均值更大 xff09 我们在实验中经常会因为各种问题 xff08 时间 经费 人力 物