使用分位数在多列中进行异常值检测会返回错误

时间:2019-12-15 11:21:51

标签: python quantile

我想在两列中保持离群值,在四分位数之上和之下。数据框本身有10列。下面是我的代码。但是代码的最后一行返回KeyError: 0.99

outliers_cols = df[['ColA', 'ColB']]

low = 0.01
high = 0.99
qtldf = outliers_cols.quantile([low, high])

outliers_df = df[(outliers_cols > qtldf[high]) | (outliers_cols < qtldf[low])]

感谢帮助。

1 个答案:

答案 0 :(得分:2)

您正试图在qtldf数据框中建立不正确的索引。使用loc代替:

qtldf.loc[high]