2019独角兽企业重金招聘Python工程师标准>>>

对Permutation test 的首次描述可追溯到上个世纪30年代, Fisher( 1935) 和Pitman( 1937)
介绍了其在线性统计模型中的应用。但该法计算工作量过大, 其发展在随后的半个世纪里未
得到重视。上个世纪80年代以来, 由于计算机技术的飞速发展, 使得许多模拟算法成为可能,
从而形成了许多基于大量计算的统计推断方法。Permutationtest 就是其中之一。

Permutationtest 的基本思想是: 根据所研究的问题构造一个检验统计量, 并利用手头样
本, 按排列组合的原理, 导出检验统计量的理论抽样分布; 若难以导出确切的理论分布, 则采用
抽样模拟的方法做估计其近似分布。然后求出从该分布中获得手头样本及更极端样本的概率
( P值) , 并界定此概率值, 作出推论。
若检验统计量的抽样分布是基于样本的所有可能的排列( 或组合) 条件下的分布, 则称之
为 Exact PermutationTest( EPT) , 可译为 确切排列( 组合) 检验 , 其思路类似于秩和检验。
对实际问题来说, 往往得不到检验统计量的确切抽样分布, 可通过基于样本的大量重复的随机
排列( 或组合) 估计其近似的抽样分布, 则称之为 RandomizedPermutationtest( RPT) , 可译为
随机排列( 或组合) 检验 。亦有文献中将EPT称为 Exact RandomizationTest( 确切随机化
检验) , 而将RPT称为 RandomizationTest( 随机化检验) 。
下面以成组设计的两样本均数比较的RPT( 双侧检验) 为例, 介绍其实施的具体步骤:
( 1) 建立假设, 确定检验水准。
与传统假设检验相同。H0: μ1= μ2;  H1: μ1≠μ 2; α=0. 05(双侧检验)。
(2) 构造统计量D, 并计算现有样本统计量D(obs)。
检验统计量可以根据实际情况构造, 无需考虑检验统计量的理论抽样分布, 这是Permu
tationtest 之特点。此处, 可选两样本均数之差 X1- X2 作为统计量D。
(3) 在H0 假设条件下, 通过计算机模拟得到统计量D的 经验抽样分布 。
在H0 假设成立的条件下, 即两样本来自同一个总体, 均为总体的随机样本, 那么对样
本数据重新随机分组( 各组样本含量不变) , 得到的新样本也是总体的两个随机样本, 称之为
Permutation样本。并据此计算检验统计量D。
重复步骤 k 次( 如100000次) 。
根据k 个Permutation样本的统计量D, 即可得到D的 经验抽样分布 。
(4) 计算概率P。
在H0 假设成立的前提下, P值为 经验抽样分布 中D值大于等于(或小于等于)现有样
本统计量D(obs)的概率, 即:
P= P(| D|≥ | D(obs) | ) =
number(| D| ≥ | D(obs) | )/k
其中分母k为随机重复的次数, 分子为分母中| D| ≥| D(bos)| 的次数。
( 5) 根据小概率原理作出推断性结论

例1 成组设计的两样本均数的比较。
具体数据如下:
第一组: ‍

1.4588,0.8234,-0.1939,0.5947,-0.1497,-2.1674,-0.9870,0.6366,-1.0250,0.9604

第二组:

0.7381,0.9849,2.0666,2.5958,3.5186,0.8398,2.0789,-0.3106,2.0601,0.0398
相应的R程序
twot.permutation {DAAG}
> s1=c(1.4588,0.8234,-0.1939,0.5947,-0.1497,-2.1674,-0.9870,0.6366,-1.0250,0.9604)
> s2=c(0.7381,0.9849,2.0666,2.5958,3.5186,0.8398,2.0789,-0.3106,2.0601,0.0398)
> twot.permutation(x1=s1, x2=s2, nsim=500000, plotit=TRUE) #模拟次数为500000次
[1] 0.011 #p=0.011

参考资料

1.PermutationTest 在假设检验中的应用    荀鹏程 赵 杨 易洪刚 柏建岭 于 浩 陈 峰

2.R help

twot.permutation {DAAG} R Documentation

Two Sample Permutation Test - Obsolete

转载于:https://my.oschina.net/u/1272414/blog/203423

Permutation test(排列(组合)检验)相关推荐

  1. UVA10063 Knuth‘s Permutation【排列组合】

    There are some permutation generation techniques in Knuth's book "The Art of Computer Programmi ...

  2. python 排列组合函数_Python概率统计(1):排列组合

    〇.写在前面 最近面试了很多数据分析师的候选人,包括很多背景相当不错的同学,但是都不是特别满意. 为什么呢?其实说来很简单,我们这边对于经验较少的分析师,尤其是刚毕业或者校招的同学,会着重考察统计基础 ...

  3. 无重复字符串的排列组合

    无重复字符串的排列组合.编写一种方法,计算某字符串的所有排列组合,字符串每个字符均不相同. 示例1: 输入:S = "qwe" 输出:["qwe", " ...

  4. 数学--数论-多重集排列组合与母函数

    一.无重复元素的排列组合定义 排列,英文名为Permutation,是指从某元素集合中取出指定个数的元素进行排序 组合,英文名为Combination,是指从某元素集合中仅仅取出指定个数的元素,不考虑 ...

  5. 一年中所有节日的排列顺序_计数问题(二)-排列组合的使用

    在计数问题(一)中我们分析了排列和组合的定义,计算方法以及公式的含义.排列组合的基本定义讲述的是从一列元素中分先后(排列)或不分先后地选出部分元素,其可能的选择方法数.在这一期中我们会更仔细地分析组合 ...

  6. leetcode面试题 08.08. 有重复字符串的排列组合(回溯)

    有重复字符串的排列组合.编写一种方法,计算某字符串的所有排列组合. 示例1: 输入:S = "qqe" 输出:["eqq","qeq",&q ...

  7. 程序员面试金典 - 面试题 08.07. 无重复字符串的排列组合(回溯)

    1. 题目 无重复字符串的排列组合.编写一种方法,计算某字符串的所有排列组合,字符串每个字符均不相同. 示例1:输入:S = "qwe"输出:["qwe", & ...

  8. 【算法】蓝桥杯dfs深度优先搜索之排列组合总结

    [导航] 上一篇文章 → <[算法]蓝桥杯dfs深度优先搜索之凑算式总结>   为了重申感谢之意,再次声明下文的大部分灵感均来自于[CSDN]梅森上校<JAVA版本:DFS算法题解两 ...

  9. C++语言基础 —— STL —— 算法 —— 排列组合算法

    [概述] 首先要了解什么是 "下一个" 排列组合,什么是 "上一个" 排列组合. 假设有三个数字组成的序列:{a,b,c} 则这个序列有6种可能的排列组合:ab ...

最新文章

  1. Python 进阶_OOP 面向对象编程_实例属性和方法
  2. 吴恩达《卷积神经网络》精炼笔记(2)-- 深度卷积模型:案例研究
  3. linux 内核rt,实时操作系统kernel rt
  4. 关于MySQL相关的查看显示信息:
  5. 二阶传递函数的推导及几种求解方法的比较
  6. add php support,wordpress函数add_post_type_support()用法示例
  7. 如何使用 Serverless Devs 部署静态网站到函数计算(上)
  8. 实时音视频聊天中的延时问题一篇就够
  9. es6删除数组某一项_「JavaScript 从入门到精通」10.数组
  10. react学习笔记2之正确使用状态
  11. 第0课第2节_刚接触开发板之烧写裸板程序
  12. 网页授权前端 java_在开发网页授权获取用户基本信息时code是null
  13. 创建Qsys_PIO IP核
  14. pe卸载linux系统软件,Windows和Linux双系统下完美卸载linux
  15. 获取分辨率函数是什么_浅析EDSR——深度学习超分辨率算法
  16. Scrapy部署蜘蛛爬虫项目
  17. 基于FPGA的交通灯设计与实现
  18. 物联网全栈教程-从云端到设备(十二)
  19. win10、win11双系统安装教程
  20. manifestPlaceholders占位符失效

热门文章

  1. WebMatrix开发ASP.NET简易教程
  2. 模式识别中精确定位之垂直和水平投影
  3. Android 虹软SDK人脸识别图文使用说明(更新:2019.5.14)
  4. Ubuntu 16.04安装NVIDIA驱动(含各种踩坑经历)(GeForce GTX 970)
  5. Android Others部分内存泄漏 OOM分析
  6. Google Chrome,是由Google开发的,一款设计非常简单、十分高效的Web浏览工具!
  7. JavaScript惰性载入函数
  8. Java设计模式——单例模式
  9. 架构 Varnish+Nginx+PHP(FastCGI)+MYSQL5+MemCache
  10. 网页视频直播、微信视频直播技术解决方案:EasyNVR与EasyDSS流媒体服务器组合之区分不同场景下的直播接入需求