对已知数据中异常数据和缺失数据进行识别和统计的代码
时间: 2024-11-06 18:17:52 浏览: 26
数据挖掘-Python-箱线图方法查找出数据表中异常值,并利用拉格朗日插值法和牛顿插值法补充空值(数据表+源码+报告)
5星 · 资源好评率100%
在数据分析中,对异常值和缺失数据的识别和处理是非常关键的步骤。这里有一个简单的Python代码示例,使用pandas库来完成这个任务:
```python
import pandas as pd
import numpy as np
# 假设df是一个包含数据的DataFrame
data_df = pd.read_csv('your_data.csv') # 替换为你的数据文件路径
# 异常值检测
# 通常,我们可以基于IQR(四分位数范围)来查找异常值
Q1 = data_df.quantile(0.25)
Q3 = data_df.quantile(0.75)
IQR = Q3 - Q1
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR
data_df['is_outlier'] = data_df.apply(lambda x: True if (x < lower_bound.values) | (x > upper_bound.values).any() else False, axis=1)
# 缺失值统计
missing_values = data_df.isnull().sum()
print("Missing values summary:")
print(missing_values)
# 可视化异常值和缺失值分布
data_df['is_outlier'].value_counts().plot(kind='bar')
plt.title("Number of Outliers")
plt.show()
data_df[data_df.isnull().any(axis=1)].info() # 查看含有缺失值的数据列及其数量
```
在这个例子中,我们首先计算了每个数值列的四分位数范围(IQR),然后标记出超出这个范围的值为异常值。接着,我们检查了每列的缺失值,并给出了统计信息。最后,展示了异常值的数量分布以及含有缺失值的数据部分。
阅读全文