【发布时间】:2021-06-27 08:47:28
【问题描述】:
我在下面有这些数据,我只是在练习如何从数据中删除异常值:
所以,在检查我的数据后,我发现它没有丢失或重复的值,但它有很多异常值,如下图所示:
所以,我为我的fund_A绘制了箱线图,如下所示:
然后,我应用了 IQR 方法,如下面的这段代码所示:
Q1 = bank['fund_A'].quantile(0.25)
Q3 = bank['fund_A'].quantile(0.75)
IQR = Q3 - Q1
lower_lim = Q1 - 1.5*IQR
upper_lim = Q3 + 1.5*IQR
outliers_15_low = (bank['fund_A'] < lower_lim)
outliers_15_up = (bank['fund_A'] > upper_lim)
len(bank['fund_A']) - (len(bank['fund_A'][outliers_15_low])+len(bank['fund_A'][outliers_15_up]))
bank['fund_A'][(outliers_15_low|outliers_15_up)]
bank['fund_A'][~(outliers_15_low|outliers_15_up)]
然后,当我重新绘制数据时,它仍然有一些异常值,如下所示:
你能指导我吗?我在正确的轨道上吗?如何彻底去除?我是否需要为其他人申请相同的程序?我是此类主题的初学者。
【问题讨论】:
-
是否有可能是因为这个新数据框的上限和下限发生了变化,因此出现了新元素,这些元素之前不是异常值,但现在出现了?
标签: python pandas dataframe data-analysis outliers