-1

次の順序付けられたデータ セットがあるとします。

X <- c(12, 15, 23, 4, 9, 36, 10, 16, 67, 45, 58, 32, 40, 58, 33) 

# and 

Y <- c(1.5, 3.3, 10, 2.1, 8.3, 6.3, 4, 5.1, 1.4, 1.6, 1.8, 3.1, 2.2, 4, 3) 

「標準化後の順序対の相関」とはどういう意味ですか?

Rでそれを見つける(コード化する)方法は?

4

1 に答える 1

0

与えられた X と Y のセットを標準化するために、まず母集団の平均、分散、標準偏差を計算します。

次のステップでは、各セットの個々の値をその平均から差し引く必要があり、最終ステップでは、2 番目のステップで取得した値を標準偏差で割る必要があります。これは、データの Z スコアに他なりません。セット (および個々の値、Xi など)。そうすることで、X と Y の両方のセットの平均が 0、標準偏差が 1 になります。

これは標準化された条件です。これは、すべてのセット (この場合は X と Y) の平均が常にゼロで、標準偏差が 1であるためです。

また、順序対間の関係についても調べます。

共分散相関などの特定の標準関係を見ると、傾きは Y を X に対してプロットする最適な線であり、Y 切片は元の値と標準化された値で同じでしょうか、それとも異なるでしょうか? また、両者が異なるとすれば、どのように異なるのでしょうか? また、その理由は何ですか?

これが質問の文脈でした。

Rで試したことは次のとおりです。

あなたのデータセットは:

X <- c(12, 15, 23, 4, 9, 36, 10, 16, 67, 45, 58, 32, 40, 58, 33) 
# and 
Y <- c(1.5, 3.3, 10, 2.1, 8.3, 6.3, 4, 5.1, 1.4, 1.6, 1.8, 3.1, 2.2, 4, 3) 

元のデータの統計。ここで、n = X と Y の観測値はそれぞれ 15 個です。

# Variance
VarX <- sum((X - mean(X))^2)/15    ## Which gives us Variance of X set as 374.5156
VarY <- sum((Y - mean(Y))^2)/15    ## Which gives us Variance of Y set as 6.226489

# Standard Deviation
sdX <- sqrt(VarX)       ## Which gives us Std. Dev. of X set as 19.3524
sdY <- sqrt(VarY)       ## Which gives us Std. Dev. of Y set as 2.495293

# Z-scores
Z_Score_X <- (X - mean(X))/sdX
Z_Score_Y <- (Y - mean(Y))/sdY

# A Check, mean of ZScores should be close or equal to 0 
# and Std. Dev. must be close or equal to 1
round(mean(Z_Score_X), 0)         # Yes, it is 0
round(sd(Z_Score_X), 0)           # Yes, it is 1
round(mean(Z_Score_Y), 0)         # Yes, it is 0
round(sd(Z_Score_Y), 0)           # Yes, it is 1

これは、X と Y の両方の平均と標準偏差が同じである標準化された条件です (上記の Z スコア データ セットの場合と同様)。

ここで、順序付けられたペア間の関係を調べます。カバレッジ相関などの特定の標準的な関係を見ると、傾きは Y を X に対してプロットする最適な線であり、Y の切片は元の値と標準化された値で同じになります。値またはそれらは異なるでしょうか?そして、それらが異なる場合、それらはどのように異なりますか、またその理由は何ですか?

残りを計算してみましょう...

まず、X と Y の共分散を見てみましょう... 共分散 (X, Y) = (1/n) * (Xi - 平均 (X)) と (Yi - mean(Y)) であり、一緒にすると、Xi と Yi は順序付けられたペアになります (上記のステップ 3、Z スコアを思い出してください)。

# Covariance for older sets (X, Y)
covXY <- (1/15) * sum((X - mean(X))*(Y - mean(Y)))

# Covariance for New sets (Z_Score_X, Z_Score_Y)
covXYZ <- (1/15) * sum((Z_Score_X - mean(Z_Score_X))*(Z_Score_Y - mean(Z_Score_Y)))

次に、(X と Y) のベスト フィット ラインの傾き (ベータ) を見ていきます。

思い出してください、ベータ = 勾配 = delta_Y / delta_X

# Slope for old set (X, Y)
Beta_X_Y  <- round(lm(Y ~ X)$coeff[[2]], 2)

# Slope for standardized values in new set (Z_Score_z, Z_Score_z1)
Beta_ZScoreXY <- round(lm(Z_Score_X ~ Z_Score_Y)$coeff[[2]], 2)

標準化された値の切片は常にゼロになることに注意してください。その理由は、標準化された値の平均が常に最適な線上にあり、ゼロであるためです (Z_Score_X、Z_Score_Y の場合のように、平均は 0、0 です)。 . つまり、標準化されたデータに最適な線は原点を通過する必要があります。必ずしも必要ではありませんが、そうであることが期待されます。

# Intercept for old set
Intercept_X_Y <- round(lm(Y ~ X)$coeff[[1]], 2) 
# 5.17

# Intercept for standardized set, should be zero
Intercept_ZScore_X_Y <- round(lm(Z_Score_Y ~ Z_Score_X)$coeff[[1]], 2) 
# Yes, it is 0

最後に、X と Y の共変量を X の標準偏差で割って Y の標準偏差を掛けたものに等しい相関を見ていきます。

# Correlation of old set
CorrelationXY <- round(covXY / (sdX * sdY), 2)

# Variance for new set
VarZScoreX <- sum((Z_Score_X - mean(Z_Score_X))^2)/15
VarZScoreY <- sum((Z_Score_Y - mean(Z_Score_Y))^2)/15 
sdZScoreX <- sqrt(VarZScoreX)
sdZScoreY <- sqrt(VarZScoreY)

# Correlation of new set
correlation_ZScore_X_Y <- round(covXYZ / (sdZScoreX * sdZScoreY), 2)

したがって、ここでわかるのは、古いデータセットまたは標準化された (z スコア) データの新しいセットで一定のままである全体的なものは、相関 (この場合は -0.34) です。相関関係は変更されていません。もう 1 つの注意点として、すべての標準化されたセット、勾配、共分散は相関に等しく (この場合はすべて -0.34)、標準化されたセットの切片はゼロに等しくなります。

于 2016-04-08T14:48:53.323 に答える