pair t test complete.cases(x,y)中的错误:并非所有参数都具有相同的长度

时间:2018-03-27 18:55:50

标签: r data-structures na

对不起我问愚蠢的问题......

我有一个简单的数据集,想要配对T.test,因为测量来自同一个科目

继承我的代码:

Error in complete.cases(x, y) : not all arguments have the same length
它给了我错误: table(noch4$Max_by_90_H2SPos_12) 0 1 180 57

这两个变量没有缺失值,我不明白。 这是我的数据: str(noch4$Diarrhea) num [1:237] 27 60 44 1 43 28 57 11 2 58 ... str(noch4$Max_by_90_H2SPos_12) num [1:237] 0 0 0 0 0 0 0 0 0 0 ...

SELECT DefectReporter, COUNT(*) AS DefectCount, DefectSprint, DefectSprintInWeek FROM {table} WHERE {condition} GROUP BY DefectReporter, DefectSprint, DefectSprintInWeek ORDER BY COUNT(*) DESC

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

问题是你试图对配对样本使用t检验,你需要在测量前后有相同数量的主题,在输出中你看到它有180个0和57 1,它应该具有相同的0和1的数量。

noch4 = data.frame(Diarrhea = as.numeric(rpois(237,50)), Max_by_90_H2SPos_12 = as.numeric(c(rep(0,180),rep(1,57))))

table(noch4$Max_by_90_H2SPos_12)
str(noch4$Diarrhea)
str(noch4$Max_by_90_H2SPos_12)

t.test(Diarrhea ~ Max_by_90_H2SPos_12, data = noch4, paired=T)

注意我如何使用过滤器来获得相同数量的主题

noch = noch4[124:237,]
table(noch$Max_by_90_H2SPos_12)

 0  1 
57 57 
t.test(Diarrhea ~ Max_by_90_H2SPos_12, data = noch, paired=T)

    Paired t-test

data:  Diarrhea by Max_by_90_H2SPos_12
t = 0.99629, df = 56, p-value = 0.3234
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -1.134814  3.380428
sample estimates:
mean of the differences 
               1.122807 

合乎逻辑的是,如果你有例如200个sujestos并测量变量腹泻,(preTest)然后我应用一些试剂并重新测量变量腹泻(posTest),受试者的数量是200,即,不要改变。

答案 1 :(得分:0)

0/1变量定义了一个分组。配对t检验(取决于差异)仅适用于以相同比例测量两个变量的情况。它专为事后研究而设计。这显然那种情况。应该是:

t.test(Diarrhea ~ Max_by_90_H2SPos_12, data = noch4, paired=FALSE)