-1

我有两个向量,它们都有NA值。我正在尝试为使用两个向量创建的表查找卡方值,但出现此错误:

chisq.test(data.table) 中的错误:
“x”的所有条目必须是非负的和有限的

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

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

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

4

1 回答 1

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)),]

您的数据现在只包括没有任何缺失数据的主题,并且可以随意测试。

于 2014-02-24T01:39:32.017 回答