sas中對於類別變數(離散)分布觀察用proc freq,對於連續變數則用proc univariate來完成。
識別連續型變數的異常值通常稱為盒形圖,一般採用
proc univariate data=train plot;
var variable;
run;
plot選項輸出變數的莖葉圖(觀測數少)或者直方圖(觀測數多),盒形圖,正態概率圖。(同時輸出這些圖)
該方法只能識別某變數是否存在異常值,並不能將其標識,下面有兩種方法用來標識異常值:
1)使用data 步
proc means data=train nopoint;
var variable;
output out=outlier p25=p25 p75=p75; /*p25,p75分別是上四分位數,下四分位數*,outlier為離群值即異常值/
run;
data a;
set outlier;
iqr3=3*(p75-p25);/*四分位數差的三倍,即離群值的範圍*/
call symputx('iqr3',iqr3); /*將變數變成巨集*/
call symputx('p75',p75);
call symputx('p25',p25);
run;
data outlier1;
set train;
if(&p25-&iqr3)<=&var<=(&p75+&iqr3) then outlier=0;
else outlier=1; /*觀測值在外界之內,將outlier標識為0,在之外,則標識為1*/
run;
2)當變數符合正態分佈,可以使用z記分法來標識
3)z記分法的改進
SAS學習之查詢異常值
1.查詢缺失值的萬能程式 data missing set sasuser.xb array cha character 利用 好不指定cha陣列中的字元型變數個數 do i 1 to dim cha 指定迴圈次數為陣列cha中的元素數 if missing cha i then output en...
pandas學習筆記(2) 異常值處理
先建立乙個資料集 包含空資料 df dataframe data np.random.randint 0,150,size 200,4 columns python english math chinese for i in range 30 index np.random.randint 0,20...
Python學習筆記(七) 異常處理
異常處理部分,只是很粗略的看了一遍。著重記錄try except塊,和if else類似,不過try是異常控制的,一旦發生異常,跳過其他未執行的語句,直接執行except塊中的內容。知道捕獲多種異常的方法,分別處理不同異常的方法,捕獲所有異常的方法。finally語句 無論程式是否發生異常,fina...