作者tew (咖啡王子)
站內Statistics
標題Re: [程式] SAS 刪除資料裡2%以下和98%以上的異常值
時間Sat Mar 24 10:34:58 2012
※ 引述《cropcircles (神秘的麥田圈)》之銘言:
: [軟體程式類別]:
: SAS
: [程式問題]:
: 資料處理
: [軟體熟悉度]:
: 新手
: [問題敘述]:
: 我的資料有8000多筆,由於異常值有點多,
: 之前有用univariate 初步刪除上下1%的異常值
: 但是仍然有點多,因此想再刪除上下2%的或是以2%的值來取代異常值
: 而univariate的結果跑出來只能看到1%、5%...、95%、99%等等
: 請問如何求出資料裡上下2%的值呢?應該用什麼語法?
: 已經搜尋過版上文章但沒找到,希望熟悉SAS的人可以幫我解答,謝謝!!
proc sort data=yourdata;by 要winsorize的變項;
run;
data yourdata;
set yourdata nobs=nobs_tew(自己命名的變項 隨意就好);
if 0.02 <_n_/nobs_tew<0.98 then output;
run;
收工
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 42.70.100.189
→ tew:univariate的語法 確實可輸出特定百分位數的資料 03/24 10:36
→ tew:但是SAS的help裡面就有語法了 請自己查一下吧 03/24 10:36
→ tew:畢竟research就是 re-search 自己搜尋一下使用的軟體語法 03/24 10:37
→ tew:應該是不過分的事情 03/24 10:37
推 cropcircles:感謝~我自己已經試成功了 03/24 17:04