做临床数据分析的时候我们经常会用卡方检验或者Fisher精确检验去看看不同的临床特征在两组里面有没有显著差异。今天小编就带大家来重现一下下面这篇paper的Table2
Table2里面主要展示的是各种临床特征在MEX3A高表达组和低表达组里面是否存在显著差异,用的是卡方检验。
根据卡方检验的结果,作者得到了如下结论。
接下来我们就来用R代码做卡方检验,算出P值
先来对年龄做卡方检验
#################
#Age
#################
table=matrix(c(51,66,66,189),nrow=2)
colnames(table)=c("High","Low")
rownames(table)=c("<55",">=55")
table
跟Table2里面的数据保持一致
chisq.test(table)
这里算出来的卡方值和p值跟Table2中是一致的
接下来我们来对组织病理分期来做卡方检验
########################
#stage
########################
table=matrix(c(48,30,30,2,124,57,55,3),nrow=4)
colnames(table)=c("High","Low")
rownames(table)=c("I","II","III","IV")
table
也跟表里的数据保持一致
chisq.test(table)
这里算出来的卡方值跟文中是一样的,但是p值略微有些出入,并且这里有个warning,大意是算出来的p值可能不准。
一般当某个组的样本数少于5个的时候,做卡方检验就会出现这种情况。
解决方法是用Fisher精确检验
fisher.test(table)
你会发现这个时候就没有warning了,并且p值跟文中的是一样的,这是巧合吗?大家自己体会
最后我们来看看生存状态的卡方检验
###################
#Vital status
###################
table=matrix(c(55,62,75,181),nrow=2)
colnames(table)=c("High","Low")
rownames(table)=c("Deceased","Living")
table
跟表中数据保持一致
chisq.test(table)
计算出的卡方值和p值都跟文中一样
剩下的临床特征的卡方检验,就留给大家自己练习吧!
网友评论