R语言实现定性资料的秩和检验

介绍

定性资料比如等级,毒性,应答等,可以以具有分级的因子的形式表示,比如(+ ++, +++),分别对应因子的1,2,3种水平,这样不同组样本只要看这些数据的等级的排列是否一致就可以判断这两个群体的分布是否有差异(秩和检验)。

数据

比如数据如下
我们这里想要知道A、B处理毒性是否有差异

代码

library(data.table) 
setwd("/我的文档/project/test")

dt <- fread("example.tsv") #读入文件,这里用fread依赖data.table包,也可以用read.table
dt$分组 <- factor(dt$分组)  # 分组转变成因子
dt$毒性 <- as.numeric(factor(dt$毒性))  #定性资料转变成因后再转成可以计算的数字

# 进行检验计算p值和zscore
pvalue <- wilcox.test(毒性 ~ 分组, data = dt)$p.value
zscore <-  qnorm(pvalue/2)   # 默认wilcox双尾检验所以要除以2,如果你wilcox做的是单尾检验,这里不用除以2
print(zscore)

参考资料

https://stats.stackexchange.com/questions/330129/how-to-get-the-z-score-in-wilcox-test-in-r

posted @ 2020-03-24 11:19  ywliao  阅读(3382)  评论(0编辑  收藏  举报