用NA值找到Chi-Squared

时间:2014-02-24 01:13:31

标签: r na chi-squared

我有两个向量,其中都有NA个值。我试图为我用两个向量创建的表找到一个Chi-Squared值,但是我得到了这个错误:

  

chisq.test(data.table)出错:
        'x'的所有条目必须是非负的和有限的

是否有代码从表中删除NA值?

我确实找到了一些代码来执行此操作,但我不确定这是如何工作的。如果从一个向量中删除NA值,那么另一个向量的相应值是否会进入Chi-Squared计算?

向量每个都有超过8,000个值,每行对应一个主题,因此如果该主题未能回答问题,我也不想使用他/她的其他答案。我希望这是有道理的。

1 个答案:

答案 0 :(得分:1)

一种解决方案是在运行测试之前从数据中提取NA值。

重复性在这里会有所帮助,但我猜你的数据看起来像这样:

control<-c(runif(5),NA,runif(4))
treatment<-c(runif(3),NA,runif(6))

在这种情况下,通过将数据放入数据框中,您可以为每个具有NA值的主题创建值:

df<-data.frame(control,treatment)
df<-df[-which(is.na(df$treatment)),]
df<-df[-which(is.na(df$control)),]

您的数据现在只包含没有任何数据丢失的主题,可以随意测试。