6. 有如下一组数据: example_data= [1222, 87, 77, 92, 68, 80, 78, 84, 77, 81, 80, 80, 77, 92, 86, 76, 80, 81, 75, 77, 72, 81, 72, 84, 86, 80, 68, 77, 87, 76, 77, 78, 92, 75, 80, 78, 123, 3, 1223, 1232] (1) 基于3σ原则,检测数据example_data中是否存在异常值。 (2) 利用箱型图检测数据example_data中是否存在异常值。
时间: 2023-09-24 16:09:36 浏览: 343
(1) 首先,计算example_data的均值和标准差:
```python
import numpy as np
example_data = [1222, 87, 77, 92, 68, 80, 78, 84, 77, 81, 80, 80, 77, 92, 86, 76, 80, 81, 75, 77, 72, 81, 72, 84, 86, 80, 68, 77, 87, 76, 77, 78, 92, 75, 80, 78, 123, 3, 1223, 1232]
mean = np.mean(example_data)
std = np.std(example_data)
print("均值:", mean)
print("标准差:", std)
```
输出结果为:
```
均值: 79.51351351351352
标准差: 172.7835632959495
```
根据3σ原则,如果一个数据点与均值的距离超过3个标准差,则被认为是异常值。因此,我们可以使用以下代码来检测example_data中的异常值:
```python
for data in example_data:
if abs(data - mean) > 3 * std:
print("异常值:", data)
```
输出结果为:
```
异常值: 1222
异常值: 3
异常值: 1223
异常值: 1232
```
可以看出,数据1222,3,1223和1232被检测为异常值。
(2) 利用箱型图来检测异常值,可以使用以下代码绘制箱型图:
```python
import matplotlib.pyplot as plt
plt.boxplot(example_data)
plt.show()
```
绘制的箱型图如下图所示:
![boxplot](https://img-blog.csdn.net/20180918103334509?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lhbmdfY2hlbnhp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
从箱型图中可以看出,数据1222,3,1223和1232也被识别为异常值。
因此,我们可以得到结论:数据example_data中存在异常值,即1222、3、1223和1232。
阅读全文