做临床数据分析的时候我们经常会用卡方检验或者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值都跟文中一样 剩下的临床特征的卡方检验,就留给大家自己练习吧! |
|