"Kemiringan sejati" dalam model linier normal memberi tahu Anda seberapa besar respons rata - rata berubah berkat kenaikan satu poin dalam . Dengan mengasumsikan normalitas dan varians yang sama, semua kuantil dari distribusi kondisional dari respons bergerak sejalan dengan itu. Kadang-kadang, asumsi-asumsi ini sangat tidak realistis: varians atau kemiringan distribusi kondisional bergantung pada dan karenanya, kuantilasinya bergerak dengan kecepatannya sendiri ketika meningkatkanxxx. Dalam QR, Anda akan segera melihat ini dari perkiraan kemiringan yang sangat berbeda. Karena OLS hanya peduli tentang rata-rata (yaitu kuantil rata-rata), Anda tidak dapat memodelkan setiap kuantil secara terpisah. Di sana, Anda sepenuhnya bergantung pada asumsi bentuk tetap dari distribusi kondisional ketika membuat pernyataan tentang kuantilnya.
EDIT: Cantumkan komentar dan ilustrasikan
Jika Anda ingin membuat asumsi yang kuat, tidak ada gunanya menjalankan QR karena Anda selalu dapat menghitung kuantil bersyarat melalui mean bersyarat dan varian tetap. Kemiringan "benar" dari semua kuantil akan sama dengan kemiringan sebenarnya dari rata-rata. Dalam sampel tertentu, tentu saja akan ada beberapa variasi acak. Atau Anda bahkan mungkin mendeteksi bahwa asumsi ketat Anda salah ...
Biarkan saya ilustrasikan dengan sebuah contoh dalam R. Ini menunjukkan garis kuadrat terkecil (hitam) dan kemudian merah yang dimodelkan 20%, 50%, dan 80% kuantil data yang disimulasikan menurut hubungan linear berikut
sehingga tidak hanya rata-rata bersyarat tergantung pada tetapi juga varians.
y=x+xε,ε∼N(0,1) iid,
yx
- Garis regresi rata-rata dan median pada dasarnya identik karena distribusi kondisional simetris. Kemiringan mereka adalah 1.
- Garis regresi dari kuantil 80% jauh lebih curam (kemiringan 1.9), sedangkan garis regresi dari kuantil 20% hampir konstan (kemiringan 0.3). Ini cocok dengan varian yang sangat tidak setara.
- Sekitar 60% dari semua nilai berada di dalam garis merah luar. Mereka membentuk interval perkiraan 60% sederhana, searah pada setiap nilai .x
Kode untuk menghasilkan gambar:
library(quantreg)
set.seed(3249)
n <- 1000
x <- seq(0, 1, length.out = n)
y <- rnorm(n, mean = x, sd = x)
plot(y~x)
(fit_lm <- lm(y~x)) # intercept: 0.02445, slope: 1.04858
abline(fit_lm, lwd = 3)
# quantile cuts
taus <- c(0.2, 0.5, 0.8)
(fit_rq <- rq(y~x, tau = taus))
# tau= 0.2 tau= 0.5 tau= 0.8
# (Intercept) 0.00108228 -0.0005110046 0.001089583
# x 0.29960652 1.0954521888 1.918622442
lapply(seq_along(taus), function(i) abline(coef(fit_rq)[, i], lwd = 2, lty = 2, col = "red"))