Voglio selezionare i modelli usando regsubsets()
. Ho un dataframe chiamato olympiadaten (dati caricati: http://www.sendspace.com/file/8e27d0 ). Per prima cosa allego questo frame di dati e poi inizio ad analizzare, il mio codice è:
attach(olympiadaten)
library(leaps)
a<-regsubsets(Gesamt ~ CommunistSocialist + CountrySize + GNI + Lifeexp +
Schoolyears + ExpMilitary + Mortality +
PopPoverty + PopTotal + ExpEdu + ExpHealth, data=olympiadaten, nbest=2)
summary(a)
plot(a,scale="adjr2")
summary(lm(Gesamt~ExpHealth))
screenshot della trama:
Il problema ora è che voglio adattare di nuovo il modello migliore "manualmente" e dargli un'occhiata, ma il valore del rettangolo R rettificato non è lo stesso dell'output dei regsubsets? Questo è anche il caso degli altri modelli, ad esempio quando faccio il modello più semplice nella grafica:
summary(lm(Gesamt~ExpHealth))
Il grafico dice che dovrebbe avere un R rettificato di circa 0,14, ma quando guardo l'output, ottengo un valore di 0,06435.
Ecco l'output di summary(lm(Gesamt~ExpHealth))
:
Call:
lm(formula = Gesamt ~ ExpHealth)
Residuals:
Min 1Q Median 3Q Max
-18.686 -9.856 -4.496 1.434 81.980
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -3.0681 6.1683 -0.497 0.6203
ExpHealth 1.9903 0.7805 2.550 0.0127 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 18.71 on 79 degrees of freedom
(4 observations deleted due to missingness)
Multiple R-squared: 0.07605, Adjusted R-squared: 0.06435
F-statistic: 6.502 on 1 and 79 DF, p-value: 0.01271
Non so cosa avrei potuto fare di sbagliato, qualsiasi aiuto sarebbe apprezzato.
E, ultimo ma non meno importante, alcune altre domande:
- Qual è la differenza tra la selezione dei modelli di AIC e di adj. R al quadrato?
- Entrambi misurano l'adattamento e riconoscono il numero di variabili, quindi non è il modello migliore scelto da AIC anche il modello con il più alto agg. r al quadrato?
- Quando ho 12 variabili, questo significa che ci sono possibilità di modelli, giusto?
- Quindi il
regsubsets()
comando calcola ciascun modello e mostra i due migliori (nbest=2
) di ogni dimensione? - In tal caso, ottengo davvero il modello "migliore"?
- E quando eseguo AIC usando la selezione all'indietro (a partire dal modello che contiene tutte le variabili), questo finisce anche con lo stesso modello che
regsubsets()
dice che è il migliore?