R-quadrato nella regressione quantile


21

Sto usando la regressione quantile per trovare predittori del 90 ° percentile dei miei dati. Lo sto facendo in R usando il quantregpacchetto. Come posso determinare per la regressione quantile che indicherà quanta variabilità viene spiegata dalle variabili predittive?r2

Quello che voglio veramente sapere: "Qualunque metodo che posso usare per scoprire quanta variabilità viene spiegata?". Livelli di significatività di valori P è disponibile in uscita di comando: summary(rq(formula,tau,data)). Come posso ottenere la bontà di adattamento?


7
R2 non è rilevante per la regressione quantile.
whuber

@whuber: Qualche metodo alternativo che posso usare per scoprire quanta variabilità viene spiegata?
anche il

2
Sarebbe una buona cosa porre nel corpo della tua domanda, piuttosto che seppellire in un commento! "Variabilità spiegata" (misurata in termini di varianze, comunque) è essenzialmente un concetto dei minimi quadrati; forse quello che vuoi è una misura appropriata di significato statistico o possibilmente bontà di adattamento.
whuber

Per ogni figura di merito devi considerare quali sarebbero le buone prestazioni, quali sarebbero le scarse prestazioni e quali sarebbero irrilevanti. Ad esempio, non è una critica al 90 ° percentile se questo è un pessimo predittore del 10 ° percentile. Il tuo benchmark potrebbe essere quello che potresti usare se non stessi usando la regressione quantile. Se i tuoi predittori sono continui, potrebbe essere difficile da definire.
Nick Cox,

1
@whuber: l'ho aggiunto nel corpo della domanda. Il livello di significatività per valore P è disponibile nell'output di riepilogo (rq (formula, tau, dati)). Come posso ottenere la bontà di adattamento?
anche il

Risposte:


23

Koenker e Machado descrivono , una misura locale di bontà di adattamento al particolare ( ) quantile. R 1 τ[1]R1τ

SiaV(τ)=minbρτ(yixib)

Consenti a e essere le stime dei coefficienti per il modello completo e un modello limitato, e lascia che e siano i termini corrispondenti . ~ β (τ) V ~ V Vβ^(τ)β~(τ)V^V~V

Definiscono la bontà del criterio di adattamento .R1(τ)=1V^V~

Koenker fornisce il codice per qui ,V

rho <- function(u,tau=.5)u*(tau - (u < 0))
V <- sum(rho(f$resid, f$tau))

Quindi, se calcoliamo per un modello con solo una intercetta ( - o nello snippet di codice in basso) e quindi un modello senza restrizioni ( ), possiamo calcolare un che è - almeno teoricamente - un po 'come il solito .~ V V R 2VV~V0V^R1 <- 1-Vhat/V0R2

Modifica: nel tuo caso, ovviamente, il secondo argomento, che verrebbe inserito nel punto in cui si f$tautrova la chiamata nella seconda riga di codice, sarà il valore che tauhai usato. Il valore nella prima riga imposta semplicemente il valore predefinito.

'Spiegare la varianza sulla media' non è proprio quello che stai facendo con la regressione quantile, quindi non dovresti aspettarti di avere una misura davvero equivalente.

Non penso che il concetto di traduca bene in regressione quantile. Puoi definire varie quantità più o meno analoghe, come qui, ma indipendentemente da ciò che scegli, non avrai la maggior parte delle proprietà reali di nella regressione OLS. Devi essere chiaro su quali proprietà hai bisogno e cosa no: in alcuni casi potrebbe essere possibile avere una misura che fa quello che vuoi.R 2R2R2

-

[1] Koenker, R e Machado, J (1999),
Goodness of Fit e relativi processi di inferenza per la regressione quantile,
Journal of American Statistical Association, 94 : 448, 1296-1310


Tau = 0.9 dovrebbe essere anziché 0,5?
Dimitriy V. Masterov

Sì, dovrebbe, ma se fornisci il secondo argomento corretto (come si fa nella seconda riga che ho citato sopra), è così che funziona. Il valore di 0,5 nella prima riga è semplicemente un argomento predefinito se non si specifica tauquando si chiama la funzione. Chiarirò nel post.
Glen_b -Restate Monica

@Glen_b Grazie per la spiegazione. A meno che non stia facendo qualcosa di stupido, V sembra essere la somma delle deviazioni ponderate rispetto al quantile stimato, piuttosto che uno pseudo- . R2
Dimitriy V. Masterov

@Dimitriy Uh, hai ragione, ho lasciato fuori qualcosa. Lo sistemerò a breve.
Glen_b -Reststate Monica,

@Dimitriy Penso di averlo risolto ora.
Glen_b

19

La misura pseudo- suggerita da Koenker e Machado (1999) in JASA misura la bontà dell'adattamento confrontando la somma delle deviazioni ponderate per il modello di interesse con la stessa somma da un modello in cui appare solo l'intercetta. È calcolato comeR2

R1(τ)=1yiy^iτ|yiy^i|+yi<y^i(1τ)|yiy^i|yiy¯τ|yiy¯|+yi<y¯i(1τ)|yiy¯|,

dove è il quantile montato per l'osservazione e è il valore adattato dal solo intercept modello.y^i=ατ+βτxτiy¯=βτ

R1(τ) dovrebbe trovarsi in , dove 1 corrisponderebbe ad un adattamento perfetto poiché il numeratore che consiste nella somma ponderata delle deviazioni sarebbe zero. È una misura locale di adattamento per QRM poiché dipende da , a differenza globale di OLS. Questa è senza dubbio la fonte degli avvertimenti sull'uso: se il tuo modello si adatta alla coda, non c'è garanzia che si adatti bene altrove. Questo approccio potrebbe anche essere utilizzato per confrontare i modelli nidificati.[0,1]τR2

Ecco un esempio in R:

library(quantreg)
data(engel)

fit0 <- rq(foodexp~1,tau=0.9,data=engel)
fit1 <- rq(foodexp~income,tau=0.9,data=engel)

rho <- function(u,tau=.5)u*(tau - (u < 0))
R1 <- 1 - fit1$rho/fit0$rho

Questo potrebbe probabilmente essere realizzato in modo più elegante.


La tua formula non viene visualizzata bene. Dopo il segno meno: R_1(\tau) = 1 - 􀀀l'ultimo personaggio è una specie di pasticcio. Potresti controllarlo? Forse hai incollato un personaggio non standard invece di usare Tex.
Tim

@Tim Non vedo nulla di strano, né nel tex né sullo schermo.
Dimitriy V. Masterov,

Sembra così sia su Linux che su Windows: snag.gy/ZAp5T.jpg
Tim

@Tim Quella casella non corrisponde a nulla, quindi può essere ignorata. Proverò a modificarlo più tardi da un'altra macchina.
Dimitriy V. Masterov,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.