R语言GGPLOT2绘制KOLMOGOROV-SMIRNOV KS检验图ECDF经验累积分布函数曲线可视化

最近我们被客户要求撰写关于KS检验的研究报告,包括一些图形和统计输出。

Kolmogorov-Smirnov是比较一个频率分布f(x)与理论分布g(x)或者两个观测值分布的检验方法。其原假设H0:两个数据分布一致或者数据符合理论分布。D=max| f(x)- g(x)|,当实际观测值D>D(n,α)则拒绝H0,否则则接受H0假设。
KS检验与t-检验之类的其他方法不同是KS检验不需要知道数据的分布情况,可以算是一种非参数检验方法。当然这样方便的代价就是当检验的数据分布符合特定的分布事,KS检验的灵敏度没有相应的检验来的高。在样本量比较小的时候,KS检验最为非参数检验在分析两组数据之间是否不同时相当常用。

Kolmogorov-Smirnov检验优点和缺点

两样本K-S检验由于对两样本的经验分布函数的位置和形状参数的差异都敏感而成为比较两样本的最有用且常规的非参数方法之一。

优点:该检验不依赖于要测试的累积分布函数,相比于卡方拟合检验(卡方检验需要50个以上的样本),不需要大量的样本。

缺点:只适用于连续分布;在分布中间敏感,在两端不够敏感;最大的局限在于整个分布需要完全确定,如果位置,形状等参数都是从数据中估计的,判定区间不再有效,因此这些参数一般只能通过模拟得到。

绘制Kolmogorov-Smirnov检验的ECDF曲线

绘制Kolmogorov-Smirnov检验的ECDF曲线以及分布之间的最大距离(D)的一个快速R例子。使用ggplot2和基础R绘图的例子 

require(ggplot2)

# 模拟两个分布 - 您的数据放在这里!
norm(10000, 10, 5)
dat <- data.frame
# 创建数据的 ECDF
cdf1 <- ecdf
cdf2 <- ecdf
# 找到最小和最大统计数据以在距离最大的点之间画线
mnax <- seq              
x0 <- minMax[which 

你也可以嵌入绘图,例如。


ggplot +
     #geom_line
     geom_segment  +
     geom_point+
     geom_point+

非 ggplot 绘图示例 

######################### 非 ggplot 示例

##交替,使用ecdf的标准R图
#plot
#lines

## 替代,向下到 x 轴
#segments


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值