利用箱形图提取异常数据python代码,并打印异常数据值
时间: 2024-10-21 20:08:54 浏览: 36
python绘图代码箱形图
在Python中,我们可以使用`matplotlib`库创建箱线图(Boxplot),箱线图可以帮助我们快速识别数据中的异常值。以下是一个简单的例子,展示如何使用箱线图并打印出异常数据值:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一些示例数据
data = np.random.normal(0, 1, 100) + np.random.normal(8, 2, 20) # 正常分布加上少数异常值
# 创建箱线图
plt.boxplot(data)
plt.title('Boxplot to detect outliers')
plt.ylabel('Value')
# 确定箱体之外的点为异常值
whiskers = plt.boxplot_stats(data)
outliers = [x for x in whiskers['fliers'] if x.get_ydata()[0] > whiskers['maxwhisker']] # 只取上端异常值
print("Detected outliers:")
for outlier in outliers:
print(outlier.get_xdata(), outlier.get_ydata())
# 显示图形
plt.show()
```
在这个例子中,`boxplot_stats`函数返回了一个字典,其中包含有关箱线图的一些统计数据,包括最大 whisker(即箱体的边缘),而超出这个范围的数据被认为是异常值。我们将这些异常点存储在列表`outliers`中,并打印出来。
注意,这只是一个基本的异常检测方法,实际应用中可能需要结合专业知识和业务背景调整判断标准。
阅读全文