Phương
pháp hồi quy phân vị được Koenker & Bassett giới thiệu lần đầu tiên năm
1978. Thay vì ước lượng các tham số của hàm hồi quy trung bình bằng phương pháp
OLS, Koenker & Bassett (1978) đề xuất việc ước lượng tham số hồi quy trên
từng phân vị của biến phụ thuộc để sao cho tổng chênh lệch tuyệt đối của hàm
hồi quy tại phân vị τ của biến phụ thuộc là nhỏ nhất. Nói một cách khác, thay
vì xác định tác động biên của biến độc lập đến giá trị trung bình của biến phụ
thuộc, hồi quy phân vị sẽ giúp xác định tác động biên của biến độc lập đến biến
phụ thuộc trên từng phân vị của biến phụ thuộc đó.
Ưu điểm:
- Thứ nhất, phương pháp hồi quy phân vị cho
phép thể hiện một cách chi tiết về mối quan hệ giữa biến phụ thuộc và các biến
độc lập trên từng phân vị của biến phụ thuộc, không phải chỉ xét mối quan hệ
này trên giá trị trung bình như hồi quy OLS.
- Thứ hai, mặc dù các
tính toán thực hiện trong hồi quy phân vị là phức tạp và khối lượng tính toán
nhiều hơn trong OLS, nhưng với sự phát triển của toán học, thống kê học cộng
với sự hỗ trợ của công nghệ thông tin thì những tính toán như quy hoạch tuyến
tính, bootstrap, được thực hiện rất dễ dàng và nhanh chóng.
- Thứ ba, trong hồi quy
OLS, các quan sát bất thường (outliers) thường được loại bỏ để ước lượng OLS
không bị chệch. Trong khi đó, hồi quy phân vị có tính ổn định (robustness),
không bị ảnh hưởng bởi sự hiện diện của các quan sát bất thường đó.
- Thứ tư, các kiểm định
về tham số của hồi quy phân vị không dựa vào tính chuẩn của sai số. Hơn nữa,
các kiểm định này không dựa trên bất kỳ một giả định nào về dạng phân phối của
sai số hồi quy.
- Thứ năm, hồi quy phân
vị đặc biệt phù hợp khi phân tích trên mô hình hồi quy có sự hiện diện của
phương sai thay đổi hoặc trong mẫu số liệu mà hàm phân phối của biến phụ thuộc
bất đối xứng quanh giá trị trung bình. Khi đó, hàm hồi quy phân vị trên các
phân vị khác nhau sẽ có sự khác biệt rõ rệt, cho thấy tác 26 động không giống
nhau của biến độc lập đến biến phụ thuộc ở những phân vị khác nhau.
Nhược điểm:
- Một là, các tính toán
trong hồi quy phân vị phức tạp hơn so với OLS. Ví dụ như trong OLS, muốn tìm
ước lượng tham số hồi quy sao cho tổng bình phương sai số là nhỏ nhất thì có
thể áp dụng các công thức tìm cực trị của giải tích toán học như lấy đạo hàm
riêng và giải hệ phương trình ứng với điều kiện cần của cực trị. Trong khi đó,
ước lượng tham số của hồi quy phân vị thực hiện thông qua việc giải bài toán
quy hoạch tuyến tính. Việc này sẽ khó khăn nếu không có sự hỗ trợ của máy tính.
- Hai là, phải thực hiện
nhiều hàm hồi quy trên nhiều phân vị mới cho thấy được toàn diện sự tác động
của biến độc lập đến biến phụ thuộc thay vì chỉ có một hàm hồi quy trung bình
có điều kiện trong OLS.
- Ba là, việc áp dụng
hồi quy phân vị cho các dạng hàm phi tuyến còn khá hạn chế. Các lý thuyết để xử
lý tự tương quan hoặc nội sinh trong hồi quy phân vị còn chưa được phát triển
hoàn thiện.
Với
những thế mạnh đó, ngày càng có nhiều các bài nghiên cứu ứng dụng sử dụng hồi
quy phân vị được thực hiện và công bố, cho thấy phương pháp ước lượng này đang
ngày càng được hoàn thiện và là công cụ đắc lực trong nghiên cứu kinh tế cũng
như các lĩnh vực khác. Ở VN các bạn có thể tham khảo hai nghiên cứu sau:
Quartiles (tứ phân vị)
Tứ phân vị là đại lượng mô tả sự phân bố và sự
phân tán của tập dữ liệu. Tứ phân vị có 3 giá trị, đó là tứ phân vị thứ nhất
(Q1), thứ nhì (Q2), và thứ ba (Q3). Ba giá trị này chia một tập hợp dữ liệu (đã
sắp xếp dữ liệu theo trật từ từ bé đến lớn) thành 4 phần có số lượng quan sát
đều nhau.
Tứ phân vị được xác định
như sau:
· Sắp
xếp các số theo thứ tự tăng dần
· Cắt
dãy số thành 4 phàn bằng nhau
· Tứ
phân vị là các giá trị tại vị trí cắt
Độ
trải giữa (Interquartile Range - IQR)
Interquartile Range được
xác định như sau:
Typical Case
Nghiên
cứu tác động của income lên chi cho thực phẩm (foodexp) với bộ dữ liệu có tên engel tích hợp trong gói quantreg do chính tác giả của phương
pháp này là Koenker (2005) viết.
#Fix lỗi không install.package
options(repos = c(CRAN
= "http://cran.rstudio.com"))
#Install necessary
packages
rm(list = ls())
install.packages("quantreg")
library(quantreg)
library(ggplot2)
install.packages("stargazer")
library(stargazer)
#Read the
“engel” dataset which is one of integrated dataset in “quantreg” package (Engel
food expenditure data used in Koenker and Bassett(1982). This is a regression
data set consisting of 235 observations on income and expenditure on food for Belgian
working class households)
data("engel")
head(data)
plot(engel, log =
"xy", main = "'engel' data (log - log scale)")
plot(log10(foodexp) ~
log10(income), data = engel, main = "'engel' data (log10 -
transformed)")
#Transform
engel to data frame
data.frame(engel)
head(engel, n=10)
view(engel)
#Quantile
regression in R
phanvi <- rq(foodexp
~ income,engel, tau = c(0.25, 0.50, 0.75))
summary (phanvi)
# Để hỗ
trợ so sánh trực quan, dùng gói stargazer:
q25=rq(foodexp ~
income, engel,tau=0.25)
q50=rq(foodexp ~
income, engel,tau=0.50)
q75=rq(foodexp ~
income, engel,tau=0.75)
stargazer(q25,q50,q75,title="Regression
quantitle result", type="text")
#Explanation:
in the first quantitle, foodexp = 0.029 + 0.474*income (If the income increase
by 1 bp, the food expense will increase by 0.474 bp). It is clearly seen that
there is a difference between the Q1 and the Q3, then we can take an Anova test to check whether it differs
from each other or not. The hypothesis will be explained by:
Ho: the
impact of income on foodexp is homogenous
H1: the
impact of income on foodexp is not homogenous
anova(q25,q75,joint =
FALSE)
#Data
frame in quantitle
df_phanvi <-
data.frame(t(coef(phanvi)))
View(df_phanvi)
#rename
names(df_phanvi)[names(df_phanvi)=='X.Intercept.']
<- 'Intercept'
names(df_phanvi)[names(df_phanvi)=='income']
<- 'slope'
head(df_phanvi)
or: colnames(df_phanvi)
<- c("intercept", "slope")
df_phanvi$cacphanvi
<- row.names(df_phanvi)
head(df_phanvi)
#Draw
graph
graph <-
qplot(x=income, y= foodexp, data = engel)
graph +
geom_abline(aes(intercept = Intercept, slope = slope, colour = cacphanvi), data
= df_phanvi)
Nice
ReplyDelete