1. ホーム
  2. r

[解決済み] kruskal.testで「すべてのグループの水準は有限でなければならない」というエラーが表示される。何が問題なのでしょうか?

2022-02-02 11:49:34

質問内容

値とグループを持つデータセットがあるのですが、例えば。

Val Grp
123 "A"
231 "A"
132 "A"
234 "A"
445 "B"
345 "B"
235 "B"
345 "B"

(元のデータセットは大きすぎて、ここでは表示できません)。

今、私が kruskal.test(data$Val, data$Grp) というエラーが発生します。 all group levels must be finite. でデータを確認すると is.finite() すべての値が有限であることがわかります。

このエラーについて、インターネットではあまり情報が得られないので、このエラーが何を意味するのか、何が問題なのか、誰かが教えてくれることを期待しています。

解決方法は?

を実行すれば、うまくいくはずです。

data$Grp <- as.factor(data$Grp)

次に(前回と同様に)。

kruskal.test(data$Val, data$Grp)

これは、以下の理由からです。 Grp は要因ではなく文字であり is.finite を文字クラスのオブジェクトに適用すると、常に偽になります ( ?is.finite ).