什么是游程检验

游程检验:是根据样本标志表现排列所形成的游程的多少进行判断的检验方法,主要用于检验一件事件的发生是否是随机的。游程检验广泛应用于工业产品的质量检验和生物制药检验等领域。随着大数据技术的兴起。游程检验也不断体现着他的作用。

scala实现随机游程检验


import breeze.stats.distributions._
import math._/*** RunsTest* @param serise**/def runsTest(serise: Seq[Int], alternative: String = hypothesis.twosided) = {if (serise.distinct.length > 2) {println("the serise need 0-1 destribution")} else {// 计算序列长度val slen = serise.length// 计算游程数var runsTimes = 1for (i <- 0 until slen - 1) {if (serise(i) != serise(i + 1)) runsTimes += 1 else runsTimes}val m = serise.filter(_ == 1).sizeval n = serise.filter(_ == 0).sizeval E = 1 + 2 * n * m / (n + m)val s2 = (2 * n * m * (2 * n * m - n - m)) / (math.pow(n + m, 2) * (n + m - 1))// 构建检验统计量(大样本条件下的服从正态分布)val statistic = (runsTimes - E) / math.sqrt(s2)val norm = new Gaussian(0, 1)// 计算正态分布的分布函数值def pnorm(statistic: Double) = {norm.probability(Double.NegativeInfinity, statistic)}// 求不同假设条件下的p值val pvalue: Double = if (alternative == "positive.correlated") {//     "Runs Test - Positive Correlated"pnorm(statistic)} else if (alternative == "negative.correlated") {//   "Runs Test - Negative Correlated"1 - pnorm(statistic)} else {//   "Runs Test - Two sided"2 * min(pnorm(statistic), 1 - pnorm(statistic))}// 返回检验统计量和p值(statistic, pvalue)}}

我们来看一个例子(这个例子不是很贴切,但是可以说明问题):假设抛一枚硬币,出现正面我们记为1,反面记为0,在反复抛了10次之后我们得出如下结果:(1,0,1,1,0,0,1,1,1,0)
我们想要通过结果判断该硬币是否是公平的,此时我们就可以应用游程检验的方法。首先呢我们建立假设:
H0:抛硬币的结果是随机的(即硬币是公平的)
H1:抛硬币的结果是非随机的(即硬币是不公平的)

val run = Array(1,0,1,1,0,0,1,1,1,0)
val value = runsTest(run)
println(value)(0.7024393586862705,0.48240520716622526)

检验的结果 p-value =0.48 >0.05*,我们可以认为没有充分的证据拒绝原假设,所以认为该硬币是公平的
那么如果抛硬币的结果为(0, 1, 0, 1, 0, 1, 0, 1, 0, 1)呢?
明显,这样的结果不是随机的,它已经具有周期性了。我们还是用上面的方法做检验:

val run = Array(0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
val value = runsTest(run)
println(value)
(2.6832815729997477,0.007290358091535776)

p-value < 0.05 ,所以呢我们拒绝原假设。可以认为这枚硬币是有问题的(也可能是抛硬币的人有问题哦)
*关于p-value 选定的显著性水平通常情况下都选为0.05,当然也可以根据实际需求做相应调整

R语言实现随机游程检验

游程检验用R语言实现可以参考 吴喜之老师的《非参数统计》
也可以参考以下博文

https://blog.csdn.net/Yunru_Yang/article/details/62040455

参考资料

《非参数统计》第四版 吴喜之 赵博娟

https://blog.csdn.net/Yunru_Yang/article/details/62040455
部分代码参考自R语言 lawstat包
https://mirrors.tuna.tsinghua.edu.cn/CRAN/

大数据时代的“小数据”系列2 随机游程检验相关推荐

  1. 大数据时代,小数据中心

    文章讲的是大数据时代,小数据中心,中国(上海)国际数据中心技术设备展览会在上海隆重开幕.紧跟德国工业4.0的新趋势,威图(Rittal)携绿色.节能.可靠的数据中心系统解决方案登陆本次展会.在变革的大 ...

  2. 大数据时代的小数据会消亡吗(非原创)

    大数据时代的小数据会消亡吗 苏令银 上海师范大学马克思主义学院 上海师范大学经济伦理研究中心 摘 要: 在过去的几个世纪,学术知识的构建普遍使用小数据并取得了巨大进步,其特征是为回答特定问题而生成的抽 ...

  3. 大数据 杨栋_《大数据时代的小数据建设》——论文

    在教育教学中,大部分老师对如何轻松教会学生知识感到头疼,尤其是那些自觉性较差的学生,大脑里没有学习的概念,作业强迫做,而且有些还是为了应付差事而乱做,这是为什么呢?本人认为原因有二:一是作业量大:二是 ...

  4. 大数据时代的“小数据 系列3 --Shapiro-Wilk检验

    什么是Shapiro-Wilk检验 Shapiro-Wilk检验用来检验小样本数据是否数据符合正态分布.类似于回归的方法一样,计算一个相关系数,它越接近1就越表明数据和正态分布拟合得越好. 构建检验统 ...

  5. 大数据如何帮助小数据? 主题报告速记与评述(二)

    笔者按:机器学习正在走向基于"语义"的可解释模型的新时代,zero-shot learning是其中一个很有价值的方向.参见"A DARPA Perspective on ...

  6. 【数据科学】小数据治理靠“人工”,大数据治理靠“智能”

    摘要 本文把小数据和大数据的基本概念,小数据治理与大数据治理的范围.区别.方法及主要特征介绍比较清晰. (1)小数据治理靠"人工",小数据的治理十五字方针:理数据.建标准.接数据. ...

  7. 生活在互联网大数据时代,个人数据存储还有隐私吗?

    生活在互联网大数据时代,个人数据存储还有隐私吗? 进入移动互联网的时代,流量和数据快速增长,我们几乎无时无刻不在产生数据,这些数据会被随机的存储在各种APP上.云盘上.手机的内存里或者被缓存清除掉,或 ...

  8. 大数据时代的时序数据 陈超-互联网技术联盟-专题视频课程

    大数据时代的时序数据 陈超-2856人已学习 课程介绍         1024大数据技术峰会邀请到11位来自一线互联网企业的大数据核心研发团队骨干成员,针对选型开源技术搭建大数据平台.持续运维.优化 ...

  9. 大数据时代来临,数据应用随处可见

    序:大数据之所以可能成为一个时代,在很多程度上是因为这是一个可以由社会各界广泛参与,八面出击,处处结果的社会运动,而不仅仅是少数专家学者的研究对象.数据产生于各行各业,这场变革也必将影响到各行各业,因 ...

最新文章

  1. 导致命令注入漏洞的php函数,PHP安全-函数
  2. szu 寒训第二天 树状数组 二维树状数组详解,以及树状数组扩展应用【求逆序对,以及动态第k小数】
  3. python去哪里学-学Python从哪里开始?
  4. 通俗易懂。HTTP请求行、请求头、请求体、响应行、响应头、响应体详解
  5. Zookeeper客户端Curator使用详解
  6. 阿里云rocketmq_云原生时代消息中间件的演进路线
  7. dbms_排名前50位的DBMS面试问答
  8. vue在线聊天系统源码
  9. 安卓 删除事件弹出消息框_微信更新,朋友圈可以删除好友评论了?网友:杠精终于可以删了...
  10. macOS 开发 - Command Line Tool 命令行工具
  11. 在线股票配资配资股票交易整站源码/牛股跟投带实盘策略区块链网站整站源码
  12. 什么是差模干扰和共模干扰?
  13. mysql学习--mysql必知必会
  14. JSP——猜英文小写字母的Web小游戏
  15. Yarn访问8088端口时提示 Can not find any active RM. Will retry in next 12 seconds.
  16. 诺贝丽斯宣布成功完成收购爱励铝业
  17. 苏州新导化工厂人员定位系统功能真的如此强大?当然强大,定位准确
  18. 简单工厂、工厂、抽象工厂
  19. 汽车CAN总线分析仪
  20. 原生table-多级表头【广度优先实现】

热门文章

  1. 门诊缴费原型设计-医院管理系统模块原型-门诊缴费原型设计-Axure9
  2. 公网ip需要网关吗_我们真的需要另一个物联网网关吗?
  3. MySQL分区表的介绍及使用
  4. 【天光学术】演讲技巧:如何让你的演讲瞬间吸引人?
  5. GeoServer发布数据库中的空间数据表
  6. 【编程碎笔】-32位计算机和64位计算机的内存计算
  7. obsidian之腾讯云图床+picgo设置指南
  8. windows server 设置FTP
  9. 心灵震撼之电视剧系列
  10. 以太网物理层协议整理-百兆/千兆以太网