Как я могу определить и удалить выбросы, найденные при помощи boxplot в python? - PullRequest
0 голосов
/ 26 января 2019

Я хочу удалить выбросы, найденные блокпостом в моем кадре данных для каждого столбца. Я знаю, что boxplot находит выбросы по правилу IQR и отображает их на графике. Я знаю, как построить коробочную диаграмму, используя морского рожка, но я не уверен, как точно определить, к каким строкам относятся эти выбросы и как их удалить? Есть ли функция / метод для этого?

1 Ответ

0 голосов
/ 26 января 2019

Согласно базовому определению выбросов IQR, значения меньше Q1-1,5 * IQR и значения, превышающие Q3 + 1,5 * IQR, рассматриваются как выбросы.Итак,

Q1 =  df['col_name'].quantile(0.25)
Q3 = df['col_name'].quantile(0.75)
IQR = Q3 - Q1

Теперь выбросы

df[(df['col_name'] < Q1-1.5*IQR ) | (df['col_name'] > Q3+1.5*IQR)]['col_name']
...