5 votos

¿Transformar manualmente dos variables dependientes según su matriz de correlación en R?

Tengo dos variables continuas, X e Y, que están correlacionadas - no son independientes. Para corregir la no independencia, tengo una estructura de correlación conocida, una matriz S.

Si se llama gls(Y ~ X, correlation = S) Lo que creo que ocurre es que, internamente, gls() transforma X e Y de alguna manera para que la regresión acabe siendo S^(-1)*Y = S^(-1) * X .

¿Cómo se realiza realmente esta transformación? De la literatura que he consultado, he visto de todo, desde:

X.transformed <- solve(chol(S)) %*% X 
#The inverse of the Choleski decomposition of S times the vertical vector X, 
#which in my case does nothing to the data

a

X.transformed <- chol(solve(S)) %*% X 
# which has negative values and gives meaningless values of X

Otro método que he visto es transformar la variable dependiente por

chol(solve(S)) %*% Y 

y la variable independiente por

chol(solve(S)) %*% cbind(1,X) 

y hacer el modelo lineal utilizando los términos de intercepción transformados en la primera columna de la matriz X:

lm(Y ~ X - 1)

En una nota relacionada, ¿tiene algún sentido transformar manualmente los datos para trazarlos? ¿Los valores transformados tienen algún significado, o simplemente están ahí para estimar los coeficientes de regresión? (En otras palabras, si X es una variable de cifras de masa corporal, los valores de X no son necesariamente erróneos si son negativos, ya que siguen siendo lineales). Supongo que de esto se deduce que un $R^2$ ¿la estadística de las variables transformadas tampoco tiene sentido?

4voto

Sean Hanley Puntos 2428

Cuando los errores son dependientes, por ejemplo con modelos multinivel, la solución matricial es:

$\beta=(X'\Sigma^{-1}X)^{-1}X'\Sigma^{-1}Y$

Dónde $\Sigma$ es la matriz de covarianza. Para más información, véase aquí . El objetivo de este procedimiento no es que $\hat\beta$ sería errónea (es decir, tendenciosa), sino que de lo contrario sería ineficiente . Es decir, la distribución muestral de la estimación OLS de $\beta$ tiene mayor varianza que la estimación GLS. Además, los intervalos de confianza (por ejemplo, los valores p) serían incorrectos. (Por tanto, esto es un problema tanto de inferencia como estimación .)

En cuanto a tu pregunta sobre cómo se podrían transformar los datos para trazarlos, nunca lo he hecho, pero copiaré la información de la página de wikipaedia:

$\Sigma = BB'$

$Y^* = B^{1}Y$

$X^* = B^{1}X$

$\epsilon^* = B^{1}\epsilon$

$Y^*=X^*\beta+\epsilon^*$

Como digo, nunca lo he hecho, pero no veo por qué no tendría sentido. También podrías simplemente trazar tus líneas de datos individuales, con una línea de regresión en negrita (usando los valores de la pendiente media y la intercepción media como parámetros, por ejemplo) superpuesta sobre ellas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X