Giá trị ngoại lai là những quan sát không nằm trong xu hướng chung so với phan còn lại của dữ liệu, đôi khi gây bất cân xứng đến các giá trị dự đoán và ước tính tham số mô hình.. Một số
Trang 1UNIVERSITY OF ECONOMIC AND LAW
FACULTY OF INTERNATIONAL ECONOMIC RELATIONS
PHAN TICH DU LIEU TRONG KINH TE
BÀI TẬP NHÓM SO1:
CÁCH ĐÈ PHÁT HIỆN VÀ XỬ LÝ OUTLIER TRONG STATA
Nhém6: Đặng Kiên Cường K214021218
Phan Nguyễn Tường Vy K214020111
Hỗ Chí Minh, ngày II tháng 7 năm 2023
Trang 2Mục lục
I Outlier 14 gì? Ảnh hưởng như thế nào? 5s TỰ TH H1 H21 121g rruyg 2
H Các cách phát hiện outÏiers 2n n HH1 1112101111 01H HH nh HH Hay 2
1 Đối với biến đơn 5c 222222 tt 1H HH re 2
a) Sắp xếp dữ liệu - St HH HH nu t 1H11 H 21211 1e 2
b) Biễu đồ hộp 0 ST HH HH Han 2 ng 212gr e 3
ðONE j4 nh 3 d) Histogram (Biểu đồ thanh) 5 ST HH H111 121g uy 4 2J0`)0) 1 .e 5 J0) 1n 4 5
2 Đối với biến phụ thuộc trong mô hình hồi quy - 5 ST HH ng rườn 5 a) Standard Residual và Studentized Residuals c2 S22 2x2 reo 5 b) Suir dung P2 /2v1{.01 1 00nnẺn 7 Jjvì 0000:2600) 01)) -), 0n ố 7 d) Sử dụng Difference in EÏ{ Án nnn ng 1 0111121111112111 0111111111111 11111 1111811 xe 8 e) Sử dụng giá trị dự đoán Phần dư - 55c cọ HH TH HH2 t2 2tr e 9
A) Giữ các ngoại ÌỆ cv HH HH1 HH1 0111 1 H1 1 HH HH TH H11 ru 10
b) Sửa lỗi nhập dữ liệu 52 S1 TT H22 2221121 2121 22g12 1tr ne 10
c) Thay thé gia trị ngoại lai: (thay đổi giá trị của một ngoại lệ thành quan sát gần nhất không phải là ngoại lỆ) - G2 1212111211111 101 1111011811 1101111211111 11 11 HH HH hay 10 d) Loại bỏ giá trị ngoại Ìai cn HH nh n1 11011111111 11 11111 1111111111111 1 ng kg 11
2 Đối với mô hình hồi quy - 2-55 2 TỰ TH TH H111 212112 uyu 11
I 0.) 0 na 13
Trang 4I Outlier la gi? Anh hưởng như thế nào?
Giá trị ngoại lai là những quan sát không nằm trong xu hướng chung so với phan còn lại của dữ liệu, đôi khi gây bất cân xứng đến các giá trị dự đoán và ước tính tham số mô hình Một số nguyên nhân gây ra giá trị ngoại lai có thé ké đến như lỗi dữ liệu, lỗi đánh máy, báo cáo sai thông tin, sai cau tric biến, biến bị bỏ sót, lỗi lấy mẫu, giả định phân phối không
chính xác, tính ngầu nhiên của đữ liệu,
Ảnh hưởng của outliers:
- Có thể làm sai lệch ước tính của các hệ số hỗồi quy, ảnh hưởng đến độ phân giải trực quan của dữ liệu còn lại, làm giảm tính chính xác của trớc lượng thống kê
- _ Ánh hưởng đến mô hình bình phương nhỏ nhất, dẫn đến kết luận sai lam
- Chúng có thể là kết quả của việc xác định sai mô hình hay bỏ sót biến, hoặc ngoại lệ
thuộc một quân thê khác với quần thẻ đang nghiên cứu
II Cac cach phat hién outliers
“Dữ liệu sử dụng và các mình họa dưới đây được lay tu file “Data nộp.dta” gửi kèm”
1 Đối với biến đơn
a) Sắp xếp dữ liệu
Biện pháp này cung cấp cho chúng ta cái nhìn tổng quan trực quan về cách các giá trị
của một biến tăng lên và liệu một vài giả trị cực đoan có tồn tại riêng lẻ hay không
Code minh họa: sử dụng 2 lệnh dưới cho biến price
.sort Diện tích
40.00
141.00
45.00
145.00
47.00
148.00
49.00
Trang 5b) Biểu đồ hộp
Biéu đồ hộp biêu thị một giá trị ngoại lai outliers nằm ngoài phân phối chuân/ mẫu điển
hình của biến Tuy nhiên, đề biết được giá trị chính xác của nó, ta phải sắp xếp dữ liệu theo cách thủ công:
(1) Yêu cầu Stata gắn nhãn cho biểu đỗ: Tạo một biến có tên ¡d, biến này sẽ hoạt động như
một số ID duy nhất cho mỗi hàng Điều này sẽ tạo ra một biến này mô tả số lượng quan sát cho mỗi hàng
Code minh hoa: gen id=_n
(2) Sử dụng hộp lệnh đề vẽ biểu đồ hộp:
Code minh hoa: graph box Diệntích, mark(1,mlabel(id))
Tùy chọn kí hiệu (mlabel()) phù hợp cho từng biêu đồ hộp, đảm bảo rằng các dâu chấm được vẽ cho biến giá được gắn nhãn tương ứng số quan sát
@66 ®@8869 @90
50 100 150 200
Diện tích m^2
%1)
c) Lệnh extremes
Biéu đồ hình hộp không cho phép thay đối mức độ giữa các phân tư Điều này ảnh
hưởng đến khả năng kiểm tra các giả trị outliers được xác định một cách khác biệt
Một số định nghĩa đề xuất bat kỳ giá trị nào trên 150% của phạm vi vùng được xem như
là outliers, trong khi các định nghĩa khác xác định 220% hoặc 300% IQR là ngoại lai Đề giải
quyết vấn đề này, chúng ta sử dụng lệnh Extremes
Code minh họa:
ssc install extremes
extremes Diéntich
Để điều chỉnh đầu ra theo một tỷ lệ phan trăm nhất định của IQR, ta sử dụng lệnh:
Trang 6.extremes Diệntích, iqr(1.5) //Lệnh trả về các giá trị ngoại lai bằng 150% IQR
extremes Diéntich, iqr(1.5) extremes Diéntich, iqr(2.20) extremes Diéntich, iqr(2.2) //Lénh trả về các giá trị ngoại lệ bằng 220% IQR
d) Histogram (Biểu đồ thanh)
Biéu đồ thanh biểu thị các giá tri phân phối không đều và đồ thị bị lệch phải/trái, cho
thấy có sự xuất hiện của gia tri outliers Biểu đồ biểu thị rõ rảng một quan sắt xảy Ta VỚI tần
suất rất Ít với giá trị rất cao/thấp so với các quan sát khác
Cách thực hiện:
(1) Tại thanh Menu nhắn chọn Graphics > Histogram Các nội dung quan trọng cần chọn gồm variable (chọn biến đề vẽ biểu đồ), percent (tỷ lệ phần trăm), nhấp chuột trái vào các lựa chọn khác như Y axis (trục tung Y), X axis (trục hoành X) và Titles (tên biêu đỏ) đề bô sung các thông tin mong muốn
(2) Dung code: histogram Diéntich, bin(25) frequency
]—
Oo
N
15 1
50.00 100.00 150.00 200.00
Dién tich m42
Trang 7e) Spike Plots
Biéu dé tăng đột biến hiển thị mức tăng đột biến riêng lẻ của từng giá trị của một biến liên tục Mức tăng đột biến đối với các điểm dữ liệu được nhóm lại với nhau có thê được kết luận như là không phai outliers Bất kì sự tăng đột biến nảo ở một khoảng cách đáng kể so với các cụm này sẽ cho thấy sự hiện diện của một ngoại lai
Đề tạo các biểu đồ tăng đột biến, ta chon Graphics > Distributional graphs > Spike plots and rootogram hoac dung code: spikeplot Diéntich, round(5)
wo J =
50.00 100.00 150.00 200.00
Diện tích m^2
©¬
f) Z-Score:
Phương pháp này đòi hỏi phải tinh toán z-score của các biến Nếu bất kì giá trị nao trong số này nằm ngoài ba độ lệch chuẩn so với giá trị trung bình, các quan sat trong ứng sẽ được coi là outiers
Code minh hoa: Z-score tạo bằng cách tiêu chuẩn hóa biến price băng cách sử dụng lệnh
eøen stdDiệntích = std(Diệntích)
2 Đối với biến phụ thuộc trong mô hình hồi quy
a) Standard Residual va Studentized Residuals
Studentized Residuals cé thê được hiểu là thống kê t để kiểm tra tầm quan trọng của một biến giả bằng 1 trong quan sát được đề cập và 0 ở những nơi khác Một biến giả như vậy sẽ
hấp thụ quan sát một cách hiệu quả và do đó loại bỏ ảnh hưởng của nó trong việc xác định các
hệ số khác trong mô hình.” Các giá trị từ 2 trở lên (hoặc -2 trở xuống) có thê có vấn đẻ
Code minh họa:
Trang 8.repress Diệntích Giá Phòngngủ SốWC Ởtungtâm // Mô hình hồi quy đa biến predict std_resid if e(sample), rstudent // Tinh toan studentized residuals
gen outliers = abs(std_resid) > 2 // Su dụng ngưỡng 2, Phát hiện giá trị ngoại lai dựa trén Studentized residuals
_ list if outliers // Hién thị các giá trị ngoại lai
Hoặc:
.repress Diệntích Giá Phòngngủ SốWC Ởtungtâm // Mô hình hỏi quy đa biến predict std_resid if e(sample), rstandard // Tinh toan studentized residuals
gen outliers = abs(std_resid) > 2 // Su dụng ngưỡng 2, Phát hiện giá trị ngoại lai dựa trén standardized residuals
_ list if outliers // Hién thị các giá trị ngoại lai
- regress Diệntích Giá Phòngngủ SốIiC Ởtrungtâm
b Caunce | << a£ mc Mumhon nf nhe — aa Sir d ) _ predict std_resid if e(sample), rstandard ư dụng
Leverage
gen outliers = abs(std_resid) > 2
— measure list if outliers
Trong
—_ Giá Diệntích Phòngngủ S6WC Ởtrung~m std_resid outliers Stata,
— 3 11579 119.90 3 2 có 5 -5.148022 1 thong ké
8 8142 78.00 2 2 có -2.734958 1 Leverage , 89 19490 212.00 3 3 Khéng 3.956498 1 A
> Wee 0 8g, ceeee ~~.~.—~~x weve sow wewee ¬ water R
predict std_resid if e(sample), rstudent
gen outliers = abs(std_resid) > 2
- list if outliers
Giá Diệntích Phòngngủ SốHC Ởtrungxm std resid outliers
3 11570 110.00 3 2 Có -6.168932 1
8 8140 78.00 2 2 Có -2.846974 1
89 19400 212.00 3 3 Không 4.354512 1
lai Leverage đo lường ảnh hưởng của từng quan sát đối với các giá trị phù hợp của mô hình hồi
7
Trang 9quy Các ngoại lệ sẽ có giá trị Leverage cao, cho thấy rằng chúng có tác động mạnh đến sự phù hợp của mô hình tổng thê Khi Leverage > 2k/n thì có Leverage cao Đối với các mẫu nhỏ, ta
có thê sử dụng 3k/n
Code minh họa:
regress Diệntích Giá Phòngngủ SốWC Ởtrungtâm
predict leverage if e(sample), leverage //Tinh toan leverage scores
gen outliers = leverage > 2 * 4/90 // Sử dụng ngưỡng 2*k/n (k: số biến độc lập, n: số quan sát) Phát hiện giá trị ngoại lai dựa trên leverage scores
_list if outliers // Hién thị các gia tri ngoai lai
.„ predict leverage if e(sample), leverage
- gen outliersl = leverage > 2 * 4/90
+ list if outliersl
Giá Diéntich Phdngngi SốMC Otrung~m std_resid outliers leverage outlie~l
1 5440 49.00 1 1 Có -.9385968 9 9975435 1
3 11579 119.00 3 2 Có -5.148022 1 „273346 1
6 4520 85.00 3 3 Không -.8705275 9 -0980787 1
8 8140 78.00 2 2 Có -2.734958 1 „0932221 1
9 5270 58.00 2 1 Có -.1494315 9 -0899774 1
14 8050 130.00 3 3 Có 1.568841 9 „1145943 1
15 5020 72.08 2 1 Có 1.570552 9 „8918781 1 A0 3020 67.00 2 3 Khéng -.266194 9 „1589497 1
44 8060 148.00 3 2 Không 1.139911 9 „1196884 1
58 5620 73.40 3 2 Có -.9743052 9 13628 1
89 19490 212.00 3 3 Không 3.956498 1 „2500461 1
c) Su dung Cook's Distance
Cook's distance là một cách khác để đo lường mức độ ảnh hưởng Cook's distance do
lường sự thay đổi tông hợp trong các hệ số ước tính khi mỗi quan sát không được ước tính Các
giá trị của khoảng cách Cook lớn hơn 4/N (trong trường hợp nảy là 4/90 = 0,044) có thê có vấn
đề
Code minh họa:
.regress Diệntích Giá Phòngngủ SóWC Ởtrungtâm
prediet cooks_ distance !f e(sample), cooksd //Tính giả trị Cook's distance
gen outliers = cooks_ distance > 4/90 //Phát hiện giá trị ngoại lai
Trang 10_ list if outliers //Hién thi cac giá trị ngoại lai
« predict cooks_distance if e(sample), cooksd
„ gen outliers = cooks_distance > 4/90
list if outliers
Giá Diéntich Phòngngủ SốHC Otrung~m cooks ~e outliers
3 11579 119.90 3 2 Có 1.993866 1
8 81490 78.00 2 2 Có .1537974 1
14 8059 130.00 3 3 Có 9637192 1
15 5020 72.00 2 1 Có .0499117 1
89 19400 212.00 3 3 Không 1.043848 1
d) Sử dụng Difference in Fit
Day là sự khác biệt giữa các phản hồi dự đoán từ mô hình được xây dựng bằng dữ liệu đây đủ và các phản hồi dự đoán từ mô hình được xây dựng bằng cách tách riêng quan sát thứ ¡
Nó tương tự như Cook's distance Khac voi Cook’s distance, no khéng xem xét tat ca cac giá trị
dự đoàn với quan sát thứ 1 được tách ra Nó chỉ xem xét các giả trị dự đoán cho quan sát thứ 1
Nó kết hợp các giá trị đòn bây và điểm lỗi chuẩn hóa (deleted t residuals) thành một đo lường tống quan về mức độ bát thường của một quan sát Giá trị này nêu lên hơn 2/sqrt(n) thì sẽ có vấn đề
Code minh họa:
regress Diệntích Giá Phòngngủ SốWC Ởtrungtâm
dfbeta // Tinh toan DIFit
gen outliers=0 //Tao bién outliers
replace outliers = 1 if abs (_dfbeta_1) > 0.21 | abs (_dfbeta_2) > 0.21 | abs(_dfbeta_3)
> 0.21 | abs(_dfbeta_4)> 0.21 //Phat hién outliers, 0.21 14 2/sqrt(n) và thay thế nó bằng giá trị
1 trong bién outliers
_ list if outliers //Hién thi outliers
Trang 11e) Sử dụng giá trị dự đoán Phần dư
Code minh họa:
_reg Diéntich Gia Phongngu S6WC Otrungtam
predict Dudoan //Tao biến dự đoán Diện tích theo mô hình hồi quy
local threshold = 2 //Xác định ngưỡng cho giá trị ngoại lai (ví dụ: 2 độ lệch chuân) gen outliers = abs (Diéntich - Dudoan) > ( threshold’ * e(rmse)) // Xac định các giá trị ngoai lai
list Diéntich if outliers // Hién thi cdc giá trị ngoại lai
10
Trang 12Trong ví dụ trên chúng ta đặt một ngưỡng (ví dụ: 2 độ lệch chuẩn) cho giá trị ngoại lai
và sử dụng lệnh gen đề tạo một biến outliers có giá trị 1 cho các quan sát vượt quá ngưỡng và 0 cho các quan sát không vượt quá ngưỡng Cuối cùng, chúng ta sử dụng lệnh list dé hiện thị các
giả trị ngoại lai
III Cach xw ly outliers
1 Đôi với biên đơn
a) Giữ các ngoại lệ
Thay vì loại bỏ chúng, có lẽ chúng ta có thể sử đụng một số thử nghiệm phi tham số khác không bị ảnh hưởng bởi các ngoại lệ
b) Sửa lỗi nhập dữ liệu
Đôi khi các ngoại lệ tồn tại do đã có lỗi khi mã hóa biến định tính khi nhập dữ liệu Sau
khi xác định được giả trị ngoại lai, ta tiễn hành sửa lại đữ liệu cho đúng
c) Thay thế giá trị ngoại lai: (thay đôi giá trị của một ngoại lệ thành quan sát gần
nhất không phải là ngoại lệ)
Sử dụng lệnh ““ssc install winsor2” để có thê sử dụng lệnh winsor2
Sử dụng lệnh “sum [var], detail” đê hiển thị bảng tóm tắt phân phối đữ liệu với giá trị ở
các phân vị khác nhau
11