3

私はRの初心者です。数値データ間の相関をチェックする方法を学びました。

ただし、数値型とブール型のデータの相関関係を確認する方法の詳細は見つかりません。誰でも私にヒントを与えたり、これについて私を案内したりできますか.

前もって感謝します!

4

2 に答える 2

3

ポイントバイシリアル相関を探していると思います。パッケージをダウンロードしますltm。機能が含まれていますbiserial.cor

x <- rnorm(10)
y <- rep(c(0,1), 5)

library(ltm)
biserial.cor(x,y)
#[1] -0.08279833

詳細?biserial.corについては、を参照してください。

cor結果は、組み込み関数で得られたものとは少し異なります。

cor(x,y)
#[1] 0.0872771
于 2012-09-19T14:00:19.373 に答える
2

これはあなたの質問に答えます:

##x is logical, i.e. TRUE or FALSE
R> x = sample(c(T, F), 10, replace=10)
##y is numeric
R> y = runif(10)

##When we use correlation
##R converts TRUE to 1 and FALSE to 0.
R> cor(x, y)
[1] -0.5514

明らかな質問は、これを行うべきかということです。相関は、xとyの間の線形関係をテストしていることを忘れないでください。つまり、線形的に変化がx増加するためです。yこれは、シナリオでは発生しません。@Svenによる回答が示すように、ポイント-バイシリアル相関法を使用する必要があります。


データが文字ベクトルの場合、次のように言います。

x = c("M", "F") 

次に、追加の手順を実行する必要があります。

x[x=="M"] = 1
x[x=="F"] = 1
于 2012-09-19T13:53:57.787 に答える