为了账号安全,请及时绑定邮箱和手机立即绑定

在这种情况下如何使用 IQR 规则找到异常值 (40, 10)?

在这种情况下如何使用 IQR 规则找到异常值 (40, 10)?

白衣染霜花 2023-09-12 17:42:46
假设我需要使用 IQR 规则删除异常值,即本例中的 (40, 10)(请参阅下面所附的图),我该怎么做?与邻近点相比,(40, 10) 绝对是异常值。但是,Q1 = 11.25,Q3 = 35.751.5 * IQR = 1.5 * (Q3 - Q1) = 36.75仅 y 值低于 11.25-36.75 或大于 35.75+36.75 的点被视为异常值。如果必须使用 IQR 规则,如何使用 IQR 规则查找并删除 (40, 10)?这是我的代码:import pandas as pdimport matplotlib.pyplot as plttest = pd.DataFrame({'x': range(50), 'y': [i if i != 40 else 10 for i in range(50)]})plt.figure(**FIGURE)plt.scatter(test['x'], test['y'], marker='x')plt.show()这是从上面的代码生成的图。
查看完整描述

1 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

您使用 IQR 的方式仅考虑 X 轴分量。如果不包括 Y 轴分量,则 (40, 10) 处的点不是异常值。

您应该使用考虑 2D 实例的方法,例如局部异常值因子或任何其他方法。


查看完整回答
反对 回复 2023-09-12
  • 1 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信