-1

2 つのベクトルがあり、どちらにもNA値が含まれています。2 つのベクトルを使用して作成したテーブルのカイ 2 乗値を見つけようとしていますが、次のエラーが発生します。

chisq.test(data.table) のエラー:
'x' のすべてのエントリは非負で有限でなければなりません

テーブルから NA 値を削除するコードはありますか?

ベクトルに対してこれを行うコードをいくつか見つけましたが、これがどのように機能するかはわかりません。NA 値が 1 つのベクトルから削除された場合、他のベクトルからの対応する値はカイ 2 乗計算に使用されませんか?

ベクトルにはそれぞれ 8,000 を超える値があり、各行は 1 つの被験者に対応しているため、その被験者が質問に答えられなかった場合、他の回答も使用したくありません。それが理にかなっていることを願っています。

4

1 に答える 1

1

One solution would be to pull out the NA values from your data before you even run the test.

Reproducibility would be helpful here, but I'm guessing your data look something like this:

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

In this case, by putting your data into a dataframe, you can both values for every subject with an NA in either value:

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

Your data now only includes subjects without any missing data, and can be tested as you please.

于 2014-02-24T01:39:32.017 に答える