美文网首页R
R做有序资料的统计检验

R做有序资料的统计检验

作者: Stone_Stan4d | 来源:发表于2018-05-24 23:05 被阅读9次

帮同事做的,原始数据如下:


原始数据

需要变成这样的两列数据:


目标模式
其中group是分组,有观察组和对照组;effect是效果,4表示完全有效,3是部分有效,2是轻微有效,1是无效。
所用代码如下:
numlist <- c(8, 14, 4, 4, 2, 7, 7, 14)
effect = c()
for(i in 1:length(numlist)){
  if(i%%4 != 0){
    effect = c(effect, rep((5 - i%%4), numlist[i]))
  }
  else{effect = c(effect, rep(1, numlist[i]))}
}

data3 <- data.frame(group = c(rep('case', sum(numlist[1:4])), rep('control', sum(numlist[5:8]))),
                    effect = effect)

kruskal.test(effect~group, data3)

结果如下:


有序资料检验结果

另外有两个卡方检验,代码附录如下:

inputmatrix <- function(CaseEffec, CaseNon, ConEffec, ConNon){
  datmat = matrix(c(CaseEffec, CaseNon, ConEffec, ConNon), ncol = 2, byrow = T)
  colnames(datmat) = c('Effective', 'NonEffective')
  rownames(datmat) = c('Case', 'Control')
  return(datmat)
  }

data1 <- inputmatrix(21, 9, 13, 17)
chisq.test(data1, correct = F)

data2 <- inputmatrix(27, 3, 22, 8)
chisq.test(data2)

相关文章

网友评论

    本文标题:R做有序资料的统计检验

    本文链接:https://www.haomeiwen.com/subject/qzpejftx.html