Sì, la matrice di covarianza di tutte le variabili - esplicativa e risposta - contiene le informazioni necessarie per trovare tutti i coefficienti, a condizione che nel modello sia incluso un termine di intercettazione (costante). (Sebbene le covarianze non forniscano informazioni sul termine costante, possono essere trovate sulla base dei dati.)
Analisi
Lasciate che i dati per le variabili esplicative essere disposti come vettori colonna -dimensionale x 1 , x 2 , ... , x p e la variabile risposta essere il vettore colonna y , considerata una realizzazione di una variabile casuale Y . I minimi quadrati ordinari stime beta dei coefficienti nel modellonx1,x2,…,xpyYβ^
E(Y)=α+Xβ
si ottengono assemblando i vettori di colonna X 0 = ( 1 , 1 , … , 1 ) ′ , X 1 , … , X p in un array n × p + 1 X e risolvendo il sistema di equazioni linearip+1X0=(1,1,…,1)′,X1,…,Xpn × p + 1X
X'Xβ^= X'y.
È equivalente al sistema
1nX'Xβ^= 1nX'y.
L'eliminazione gaussiana risolverà questo sistema. Procede adiacente alla matrice 1p + 1 × p + 1ep+1-vettore11nX'Xp + 1in ap+1×p+2arrayAe riduzione di riga. 1nX'yp + 1 × p + 2UN
Il primo passo controllerà . Trovandolo diverso da zero, si procede alla sottrazione dei multipli appropriati della prima riga diAdalle righe rimanenti per azzerare le voci rimanenti nella prima colonna. Questi multipli saranno11n( X'X)11= 1nX'0X0= 1UNe il numero sottratto dalla voceAi+1,j+1=X ′ i Xjsarà uguale a ¯ X i ¯ X j. Questa è solo la formula per la covarianza diXIeXj. Inoltre, il numero rimasto nella posizionei+1,p+2 èuguale a11nX'0Xio= X¯¯¯¯ioUNi + 1 , j + 1= X'ioXjX¯¯¯¯ioX¯¯¯¯jXioXji + 1 , p + 2 , la covarianza diXicony.1nX'ioy- Xio¯¯¯¯¯¯y¯¯¯Xioy
Quindi, dopo il primo passo dell'eliminazione gaussiana, il sistema si riduce alla risoluzione
Cβ^= ( Cov ( Xio, y) )'
e ovviamente - poiché tutti i coefficienti sono covarianze - tale soluzione può essere trovata dalla matrice di covarianza di tutte le variabili.
(Quando è invertibile, la soluzione può essere scritta C - 1 ( Cov ( X i , y ) ) ′ . Le formule fornite nella domanda ne sono casi speciali quando p = 1 e p = 2. Scrivere esplicitamente tali formule diventano sempre più complessi man mano che cresce p . Inoltre, sono inferiori per il calcolo numerico, che viene eseguito meglio risolvendo il sistema di equazioni piuttosto che invertendo la matrice C. )CC- 1( Cov ( Xio, y) )'p = 1p = 2pC
Il termine costante sarà la differenza tra la media delle ed i valori medi previsti dalle stime, X beta .yXβ^
Esempio
Per illustrare, il R
codice seguente crea alcuni dati, calcola le loro covarianze e ottiene le stime del coefficiente dei minimi quadrati esclusivamente da tali informazioni. Li confronta con le stime ottenute dallo stimatore dei minimi quadrati lm
.
#
# 1. Generate some data.
#
n <- 10 # Data set size
p <- 2 # Number of regressors
set.seed(17)
z <- matrix(rnorm(n*(p+1)), nrow=n, dimnames=list(NULL, paste0("x", 1:(p+1))))
y <- z[, p+1]
x <- z[, -(p+1), drop=FALSE];
#
# 2. Find the OLS coefficients from the covariances only.
#
a <- cov(x)
b <- cov(x,y)
beta.hat <- solve(a, b)[, 1] # Coefficients from the covariance matrix
#
# 2a. Find the intercept from the means and coefficients.
#
y.bar <- mean(y)
x.bar <- colMeans(x)
intercept <- y.bar - x.bar %*% beta.hat
L'output mostra un accordo tra i due metodi:
(rbind(`From covariances` = c(`(Intercept)`=intercept, beta.hat),
`From data via OLS` = coef(lm(y ~ x))))
(Intercept) x1 x2
From covariances 0.946155 -0.424551 -1.006675
From data via OLS 0.946155 -0.424551 -1.006675