R语言怎么计算两个比值的 p 值?

有朋友问两个比值数据,怎么求他们的 p 值?

例如,两组人,分别接受两种药物治疗,想知道疗效之间是否有差异,计算 p 值。

接受药物 1 治疗,30 人,其中 20 人有疗效,10 人没有疗效。

接受药物 2 治疗,30 人,其中 10 人有疗效,20 人没有疗效。

直观上判断,药物 1 的疗效要好(20:10 vs 10:20),但与药物 2 的疗效相比,是否达到了显著性的差异了呢?

这种情况可以用 fisher 检验来探索,R 代码如下:

fisher.test(matrix(c(20101020), ncol = 2))
## 
##  Fisher's Exact Test for Count Data
## 
## data:  matrix(c(20, 10, 10, 20), ncol = 2)
## p-value = 0.01938
## alternative hypothesis: true odds ratio is not equal to 1
## 95 percent confidence interval:
##   1.212812 13.467843
## sample estimates:
## odds ratio 
##   3.901234

可以看到,p 值 = 0.01938,如果显著性阈值定为 0.05,则两种药物的疗效达到了统计学意义的上差异。

另外判断差异时,不仅要看 p 值,还要看 OR 值,这里的 OR 值 = 3.901234,其 95 % 置信区间为 1.212812 – 13.467843,是有意义的。OR 的置信区间不能跨过 1,否则 p 值再小也无意义。

粉丝福利

学生信,计算机基础一定要好。毫不夸张地说,计算机基础决定了你能否入门,而生物学修养决定你能走多远。没有出发,如何走得远?


原文始发于微信公众号(简说基因):R语言怎么计算两个比值的 p 值?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/42787.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!