Định nghĩa các giá trị ngoại lệ outliers Điểm ngoại lệ hay còn được gọi là điểm dị biệt outliers là một quan sát nằm cách xa bất thường so với các trị khác trong tập dữ liệu.. Ánh hưởng
Trang 1BO GIAO DUC VA DAO TAO TRUONG ĐẠI HỌC KINH TẾ - LUẬT ĐHQG HCM
BÀI TẬP NHÓM
CHỦ ĐÈ: CÁC PHƯƠNG PHÁP PHÁT HIỆN VÀ KHAC PHUC GIA TRI NGOAI LAI (OUTLIERS)
TRONG PHAN TICH DU LIEU
Môn học: Phân tích dữ liệu trong kinh tế
GVHD: Ths Võ Thị Lệ Uyên
Nhóm thực hiện: Nhóm l7
Trang 2STT
TPHCM, thang 7 năm 2023
DANH SACH THANH VIEN NHOM 17
Ho va tén
Nguyễn Thị Diễm An
Lê Thị Cẩm Tiên
Huỳnh Thị Khánh Ngân
Nguyễn Thị Hoài Ân
MSSV K214020073 K214020101 K214020086 K214021216
Mức độ đóng góp
100% 100% 100% 100%
Trang 3NỘI DUNG
1 Định nghĩa các giá trị ngoại lệ oufÏiers - - 0 2221212112211 1 1222111 1xx kre 4
2 Ánh hưởng của các giá trị ngoại lỆ - 5 S1 1 ng 1H treo 4
3 Các phương pháp xác định gia trị ngoại lệ (Outliers) - 0 2c c2 secevey 5 3.1 Phương pháp l: Sorting dafa c1 121122112211 112111211 1111181111111 1181111 2 kkcg 5 3.2 Phương pháp 2: Vẽ đồ thị Box pÍOt - 5 - SE E21 112112 11 12x trrrree 5 3.3 Phương pháp 3: Extremes Value AnaÌy§1§ ác 1n nnn n2 HH He 6 3.4 Phương pháp 4: Vẽ đồ thị Histogram - 5S sctc E E121 E122.11 E1 errrog 8 3.5 Phương pháp 5: Vẽ đồ thị Spike pÏOL 52 SE 1 1E 2212121 Eeerre lãi 3.6 Phương pháp 6: Z~-§COF€ - T001 1211122211111 1151112111111 1 1111101110111 kk khe 12
4 Các phương pháp xử lí vấn đề giá trị ngoại lệ - 5 nghe Hee 13 4.1 Phương pháp 1: Sửa dữ liệu Q0 222222111211 11221 12 18tr He 13 4.2 Phương pháp 2: WInsor1Zaf1OH 0 2211112111211 1111112111811 1 01111811 xk nh re, 13 4.3 Phương pháp 3: TrImming - - - 221222112211 121 11121212111 11118111181 111518111112 xe 15
Trang 41 Định nghĩa các giá trị ngoại lệ outliers
Điểm ngoại lệ hay còn được gọi là điểm dị biệt (outliers) là một quan sát nằm cách xa bất thường so với các trị khác trong tập dữ liệu Các yếu tố ngoại lai có thể là van dé vi chúng có thê ảnh hưởng đến kết quả phân tích
— fitted line s —— fitted line 30 ° — fitted line
no 120 130 140 15G 160 1/0 180 190 uo 320 130 HO 150 160 1/0 180 190 no 120 130 40 150 18G 1/0 180 130 Height (cm) t (cm) leight (cm)
Trên thực tế, khi chúng ta làm báo cáo hay xây dựng hình, sẽ rất khó để đạt giá trị tuyệt đối Trong hau hét cac trường hợp, dữ liệu xâu hoặc bất thường sẽ luôn tồn tại Những
dữ liệu này tổn tại do khá nhiều nguyên nhân khác nhau tùy vào hoàn cảnh và mô hình kinh doanh
*Một vài thực tế về outliers
Lỗi phát sinh trong quá trình nhập và chỉnh sửa dữ liệu như dư hay thiếu vài số 0 hay sai địa chỉ Lỗi này cực kỳ phô biến
Đối với các mô hình online, người ta có thê cô ý tạo ra giá trị ảo để test thị trường hoặc làm mỗi nhử Ví dụ một căn nhà có thể được ra bán với giá 100,000 đồng hay 999 tỷ Nếu chúng ta tính trung bình giá nhà tại khu vực tính luôn cả nhà phía trên, đảm bảo giá nhà sẽ cao ngất ngưởng so với thực tế
Khi muốn biết tông giá trị sản phâm bán ra trong ngày của một cửa hàng, chúng ta phát hiện có một vải ngày, con số này cao một cách đột biến so với các ngày còn lại Nguyên nhân là do gần đó có một sự kiện cộng đồng kiến khách hàng đột ngột tăng lên
2 Ánh hưởng của các giá trị ngoại lệ
Các giá trị cực trị của các quan sát có thé làm sai lệch ước lượng của các hệ số hồi quy Chúng có thê phản ánh lỗi mã hóa trong dữ liệu, ví dụ: dấu thập phân bị đặt sai vị trí; hoặc bạn đã không khai báo một số giá trị bị thiếu
Chúng có thê là kết quả của việc mô hình hóa sai - các biến đã bị bỏ sót sẽ giải thích cho
giá trị ngoại lệ
Trang 53 Các phương pháp xác định gia trị ngoại lệ (Outliers)
Trong bộ dữ liệu Math2002, nhóm đã đặt giả thiết rằng biến gpa bị ảnh hưởng bởi các
biến sau: gpa, mteststa, mrawsc, mscaleds, female, race, studstat, frlunch, titlel, lep, sped
Do đó, nhóm đã tiến hành hồi quy với mô hình như sau:
- regress gpa mrawsc mscaleds female race studstat frlunch lep sped
note: mscaleds omitted because of collinearity
F(7, 6735) = 7294.06
Adj R-squared = 0.8833
gpa Coef Std Err t P>|t| [95% Conf Interval]
mscaleds @ (omitted)
Theo kết quả quan sát được, nhóm đã nhận thấy các biến có khả năng ảnh hưởng rất cao đến gpa như biến race, studstat lại không có ý nghĩa thống kê Do đó, nhóm đặt giả thuyết rằng kết quả không chính xác có thể do dữ liệu đã chưa được xử lí và còn tổn tại các outliers làm cho ước lượng bị chệch
Vì vậy, nhóm đã tiền hành thực hiện các phương pháp đề phát hiện outlier
3.1 Phương pháp 1: Sorting data
Sort data là phương pháp sắp xếp các quan sát của dữ liệu hiện tại theo thứ tự tang dan Việc sắp xếp một cách có ý nghĩa các quan sát giúp chúng ta dễ nhận biết được các giá trị ngoại lệ (Outliers) là các giá trị quá nhỏ hay quá lớn so với phần lớn các quan sát khác,
thường sẽ nằm ở những vị trí đầu hoặc cuỗi bảng giá trị sau khi đã thực hiện sort data Thực hiện câu lệnh:
sort data (bien muon sap xép) Trong bộ dữ liệu trên, nhóm đã tiễn hành thực hiện sắp xếp tất cả các biên độc lập trong
mô hình bằng câu lệnh:
Ví dụ: nhóm sẽ lấy ví dụ sắp xếp biến studstat
sort studstat Edit
Như vậy, nhóm đã tiễn hành lần lượt tất cả các biến trên và phát hiện ra có 7 biến có chứa
giá trị ngoại lệ gôm: mfeststa, school, race, studsfat, frlunch, lep, sped
Sau đây, nhóm sẽ trình bày một ví dụ về giá trị ngoại lệ của biên studstat:
Trang 6PRRRRR
Hình 1: Kết quả phát hiện giá trị ngoại lệ cho biến studstat
Theo đó ta thay tat cả giá trị 1,2,3,4 được sắp xếp ở đầu và ta cũng nhận thấy chúng có số
lượng quá ít so với giá trị còn lại là 5 nên được xem là các giá trị ngoại lệ
3.2 Phương pháp 2: Vẽ đồ thị Box plot
Phương pháp vẽ đồ thị box-plot (hay phương pháp hộp râu) là cách vẽ đồ thi thé hiện sự
phân phôi của các giá trị của biên theo dạng hình hộp Một giá trị được xem là ngoại lệ
khi nó năm ngoài vùng tập trung đa sô quan sát của dữ liệu
graph box dafa (biên muôn vẽ đồ thị)
Ví dụ: Trong 7 biến có chứa giá trị ngoại lệ, nhóm sẽ trình bày một ví dụ về cách phát hiện giá trị ngoại lệ của biên race
graph box studstat
Trang 7studstat
Hinh 2: Két qua phat hiện giá trị ngoại lệ của biến studstat bằng đồ thị box plot
Kết quả nhận được có 2 giá trị là 2 và 3 là các giá trị ngoại lệ vì nó nằm ngoài phân phối
điền hình của biến
3.3 Phương pháp 3: Extremes Value Analysis
Phương pháp này đơn giản là xác định các data points có giá trị cực cao/thấp (extreme value) Các giá trị extreme sẽ được xác định bằng khoáng cách của chúng so với giá trị trung bình (Average/Mean) Toàn bộ các giá trị Extreme đều được xác định là outliers Tuy nhiên, trên thực tế, các giá trị outliers có khả năng không phải là giá trị Extreme Đặc
biệt là đôi với các máng dữ liệu nhiều hơn l chiều
Phương pháp này đòi hỏi phải sử dụng lệnh Extremes không được tích hợp sẵn trong Stata; nó là một lệnh do người dùng viết Để cài đặt nó, chúng ta thực hiện câu lệnh:
ssc install extremes extremes data (bién muon quan sat) Lệnh này trả về năm quan sát đầu tiên và cuối cùng của bién (dya trén sap xép tang dan),
tức là lệnh extremes được thực hiện sau khi đã thực hiện thao tác sort data
Ví dụ: Nhóm sẽ phát hiện outliers trong có chứa trong biến race
Trang 8ssc install extremes extremes studstat
- ssc install extremes
checking extremes consistency and verifying not already installed
all files already exist and are up to date
- extremes studstat
obs: studstat
1 1
2 1
3 1
4 1
5 1
7025 3
7026 3
7027 3
7028 3
7029 3
note: 5752 values of
Hinh 3: Két qua phat hién giá trị ngoại lệ của biến studstat bằng phương pháp FExtremes
Value Analysis Bang két qua sap xép cho thay có đến 5752 giá trị l, trong khi đó chỉ có 1058 giá trị 3 Như vậy, có thể xác định rằng giá trị 3 là một trong những giá trị ngoại lệ cần được phát hiện Tuy nhiên, đối với phương pháp này van con han ché vì ta chỉ phát hiện được giá tri
ngoại lệ ở vị trí cực đại hoặc cực tiểu
3.4 Phương pháp 4: Vé dé thi Histogram
Giới thiệu phương pháp:
Đồ thị Histogram là một phương thức biểu thị các dữ liệu một cách ngắn gọn và trực quan
mà không làm mat di gia trị của các dữ liệu đó Do thi dùng cho biên định lượng liên tục
nhăm biêu diễn phân phôi của tập dữ liệu
Có thê hiểu đồ thị Histogram (hay còn gọi là biêu đồ tần suất) là một dạng biểu đồ thể hiện tân suất theo dạng cột Dữ liệu được biêu thị băng các cột trên biêu đồ có độ cao
khác nhau tủy thuộc vào tân suât (bao nhiêu lần) phạm vi dữ liệu cụ thê xảy ra
Đồ thị Histogram sẽ cho cái nhìn trực quan đề tìm ra quan sát bất thường nằm ngoài dữ liệu như sau:
Trang 9Phillip Morris Monthly Stock Return, July 1990 - May 1997
30 +
20 5
15+
10+
Hinh 6: Hinh minh hoa Outliers diém ngoai lai có giá trị cực tiểu trong mẫu quan sát Cac bwéc phat hién Outliers bang do thi Histogram:
Buéc 1: Tai thanh Menu nhan chon Graphics > Histogram va hdp thoai sẽ hiện ra
Bước 2: Đầu tiên, chọn ở mục Variable các biến có có bộ dữ liệu có Outliers, tiếp đến chọn mục Y axis thanh Frequence dé thé hién được dữ liệu Outliers (như hình mình họa
Sau):
Trang 10Man iffin Weights Density plots Addplots Yaxis Xaxis Titles Legend Overall By Data
O Data are discrete
v
Chọn biến vẽ đồ thị
) Fraction
CS @ Frequency <<¬ Chọn Frequency
Bar label properties (Recalculate bin sizes when by( is specified
Hình 7: Ảnh mình hoạ các bước vẽ đồ thị Histogram
Ngoài ra còn có thé vé biéu dé Histogram theo cau lệnh:
histogram studstat, frequency
Ở bộ data của nhóm, chúng em phát hiện 7 biến có xuất hiện Outlier và chúng em sẽ trình bày ví dụ về cách phát hiện outliers của một trong 7 biến đó Ví dụ ở đây là biến studstat,
kết quả biêu đồ Histogram như sau:
Trang 1115 L
10 L
studstat
Hinh 8: Két qua phat hién outliers bang do thi Histogram
Nhìn biéu đồ, xuất hiện cột thể hiện quan sát có giá trị lần lượt là 2 và 3 với tần suất rất nhỏ quan sát còn lại Có thê kết luận đây là điệm ngoại lai
3.5 Phương pháp 5: Vẽ đồ thị Spike plot
Spikeplot tao biểu đồ tần số cho một biến trong đó tần số được mô tả là đường thăng đứng
Cac bwéc phat hién Outliers bang do thi Spike plots:
Tai thanh Menu nhan chon Graphics > Distributional graphs > Spike plots and
rootogram Sau đó chọn variable name là biên có dữ liệu chứa Outliers, ở đây là biên
mrawsc, sau do click OK
Ngoài ra còn có thé nhập câu lệnh:
spikeplot studstat
Ở bộ data của nhóm, chúng em phát hiện 7 biến có xuất hién Outlier và chúng em sẽ trình
bày ví dụ về cách phát hiện outliers của một trong 7 biến đó Ví dụ ở đây là biến studstat
ket qua do thi Spike Plot cua biên studstat như sau:
Trang 12
3S
©
oO
SJ
oO
t+
>
oO
E
®
2
oO
®
L_
oO
3S |
oO
studstat
Hình 9: Kết qua phat hién outliers bằng đô thị Spike plot
Két quả nhận được là các giá trị 2 và 3 nằm ở một khoảng cách rất xa so với và có tần số
rât thâp so với giá trị còn lại là l nên ta có thê phát hiện được giá trị ngoại lệ là 2 và 3 3.6 Phương pháp 6: Z-score
Với một điệm dữ liệu x, Z score của nó được tính bởi: x—Itø
Những điểm có Z score nằm ngoài đoạn [—3,3] có thể được coi là các điểm ngoại lệ Biến đối toán học một chút, việc này tương đương với việc các điểm nằm ngoài đoạn [u-3ø.w+3ø] được coi là các điểm ngoại lệ
Đối với phương pháp Z-score, nhóm sẽ tiễn hành ví dụ với một biến khác thay vì biến sfudstat vì Z-score thường chỉ nhạy cảm với các outller cực lớn nên ứng dụng phương pháp này với biên studsfat sẽ rât khó thây sự khác biệt Do đó nhóm tiên hành với biên lep
Dé tinh duoc Z score cua bién race ta thyc hién câu lệnh:
egen stdlep = std(lep)
Trang 13Mở lại bảng dữ liệu bằng các nhắn trên thanh Menu chọn Data Edit sẽ có cột mới ngoài
cùng bên trái thê hiện Z, score cho dữ liệu của biên mrawsc
Hình 10: Kết quả phát hiện outliers bằng phương pháp Z-score
Có thê thấy, Z-score cho tất cả các quan sát khác đều dưới nằm trong đoạn [-3:3] ngoại trừ quan sát có giá trị Ì có z-score=4.374663 không năm trong khoảng [-3; 3| nên | la gia tn ngoại lệ của biên lep
4 Các phương pháp xử lí vẫn đề giá trị ngoại lệ
4.1 Phương pháp 1: Sửa dữ liệu
Sau khi phát hiện các giá trị ngoại lệ ở phân 2, ta tiễn hành chỉnh sửa các giá trị ngoại lệ
dựa theo giá trị trung bình Tuy nhiên, đôi với phương pháp này, các dữ liệu được chính
sửa không có tính đại diện cao
Ở trường hợp này, ta sẽ vào tuỳ chọn Data-> chọn Data editor->Edit đề sửa dữ liệu
Trang 144.2 Phương pháp 2: Winsorization
Wmsorizafion là phương pháp đề cập đến việc thay đôi giá trị của một ngoại lệ thành quan sát gân nhât (quan sát đó không phải là ngoại lệ)
Ta sẽ thực hiện phương pháp trên theo các bước sau:
Bước 1: Để cài đặt winsorization, ta sử dụng câu lệnh:
ssc install winsor2
Bước 2: Có thể thu được tổng quan nhanh về phân phối của một biến ở dạng bảng bằng cach sử dụng tùy chon detail với lệnh summar1ze — nó sẽ trả về các giá trị ở các phân vị khác nhau Ta sử dụng câu lệnh:
sum studstat, detail Lưu ý: Nhóm thực hiện ví dụ với biên studstat có 2 giá trị ngoại lệ là 2 và 3 như đã phát
hiện ở trên Kêt quả thu về như sau:
- ssc install winsor2
checking winsor2 consistency and verifying not already installed
all files already exist and are up to date
.~ sum studstat, detail
25% 1 1 Sum of Wet 7,029
99% 3 3 Kurtosis 4.318714
Hình 11: Kết quả các giá tri ở các phân vị khác nhau
Bước 3: Sử dụng lệnh winsor2 dé thay thé outlier bằng một giá trị trong phân vị thứ 1 và phân vị thứ 75 vì giá trị không phải outliers năm ở phân vị thứ 75
winsor2 studstat , replace cut (1 75)
Sau khi điều chính thì các giá tri outlier (2 và 3) đã không còn và được thay thé bang gia tri 1