Anomaly detection (IQR을 통한 이상치 처리)
2021. 12. 1. 01:35ㆍ데이터 사이언스/이상치 처리
특정 변수의 데이터 전체를 이상치 처리 하는 것 보다, 특정 레이블에 해당 될 때의 데이터를 삭제하는게 효과가 존재
def remove_outlier_test(d_cp,column):
o_df = d_cp[column]
quan_25 = np.percentile(o_df.values,25)
quan_75 = np.percentile(o_df.values,75)
iqr = quan_75 - quan_25
iqr = iqr * 1.5
lowest = quan_25 - iqr
highest = quan_75 + iqr
outlier_index = o_df[(o_df < lowest) | (o_df > highest)].index
d_cp = d_cp.drop(outlier_index, axis=0)
return d_cp
a1_out = remove_outlier_test(df, y_label)