大家在寫論文時可能經常會遇到大資料樣本中異常資料批量剔除的問題,本文在於向大家推薦在Stata中運用winsorize方法,來對資料進行處理(縮尾使資料平滑,或直接刪除),經試驗有效,希望有所幫助。另,此方法借鑑於人大經濟論壇的相關技術貼,在此向這些無私奉獻的老師和大牛們致以崇高的敬意!
工具/原料
Stata(網上有面安裝款,解壓能直接執行),實驗資料
方法/步驟
開啟stata,在命令列輸入ssc install winsor2, replace,自動安裝 winsor2
準備資料(注意輸入格式)
匯入資料File-Inport
輸入命令winsor2 變數名 變數名, replace cuts(1 99),此條命令是先找到各個變數的1%,99%所對應的分位數,比如對於變數ac1,其分位數分別為a、b,那麼將資料中小於a的數替換成a,將大於b的數替換成b,原始資料直接變為新資料,這樣就是縮尾,使資料平滑(口徑為1%)。若輸入命令winsor2 變數名 變數名, replace cuts(1 99) trim,則不替換,將小於a和大於b的直接刪除
最後一張圖顯示的是命令winsor2 ac1 ac2, replace cuts(1 99) trim命令的執行結果,大家看到資料表中的“.”,即是刪除完異常值後的結果,批量處理後可以File-Export將資料匯出,在Excel上排序後即可將其刪除(或在STATA上用其他命令也可)