已知超市数据(data/超市销售数据.csv),请显示前5行数据,并对数据进行数据清洗,分别对其中的缺失值、重复值、异常值和不一致数据进行处理
时间: 2024-11-10 16:26:00 浏览: 34
首先,我会加载"data/超市销售数据.csv"文件并查看前五行数据,通常可以使用Pandas库在Python中完成这个操作:
```python
import pandas as pd
# 加载数据
df = pd.read_csv('data/超市销售数据.csv')
print(df.head())
```
对于数据清洗,我们通常需要做以下几个步骤:
1. **检查缺失值**:
```python
# 查看缺失值
missing_values = df.isnull().sum()
print("缺失值统计:", missing_values)
# 如果发现缺失值,可以选择删除含有缺失值的行(dropna)、填充特定值(fillna)、或者使用模型预测填充。
2. **处理重复值**:
```python
# 检查并删除重复记录
if df.duplicated().any():
df = df.drop_duplicates()
print("已删除重复项")
```
3. **异常值检测**:
可能需要根据业务知识或统计方法(如箱线图、Z-score等)识别异常值。例如,如果某列数值应该在一定范围内,超出范围的数据可能是异常值:
```python
# 对于数值型数据,计算四分位数IQR
Q1 = df.quantile(0.25)
Q3 = df.quantile(0.75)
IQR = Q3 - Q1
outliers = (df < (Q1 - 1.5 * IQR)) | (df > (Q3 + 1.5 * IQR))
print("异常值:", outliers.any())
# 对于找到的异常值,可以选择删除、替换或标记它们。
4. **处理不一致数据**:
这可能涉及到数据类型错误、单位转换等问题,需要具体情况具体分析。例如,检查日期格式的一致性,统一商品编码格式等。
请注意,在实际操作之前,最好先了解数据的具体内容和业务背景,以便更准确地处理这些问题。此外,清洗后的结果需要保存到新的CSV文件中,以防原始数据丢失。
阅读全文