数据有三列,有文字,有数字,都需要清洗
时间: 2024-01-12 16:03:43 浏览: 23
好的,下面是一个更加通用的数据清洗示例代码,可以对包含文字和数字的数据进行清洗:
```
import pandas as pd
# 读取原始数据
data = pd.read_csv('raw_data.csv')
# 去除重复数据
data.drop_duplicates(inplace=True)
# 填充缺失值
data.fillna(method='ffill', inplace=True) # 使用前向填充填充缺失值
# 处理异常值
data = data[(data['price'] > 0) & (data['price'] < 10000)] # 过滤掉价格异常的数据
# 清洗文字列
data['text'] = data['text'].str.strip() # 去除字符串两侧的空格
data['text'] = data['text'].str.lower() # 将字符串转换为小写字母
# 清洗数字列
data['num'] = pd.to_numeric(data['num'], errors='coerce') # 将数字列转换为浮点型数据,无法转换的数据填充为NaN
# 保存清洗后的数据
data.to_csv('cleaned_data.csv', index=False)
```
上述代码中,首先使用Pandas库读取原始数据,然后使用drop_duplicates()方法去除重复数据,使用fillna()方法填充缺失值,使用逻辑运算符和比较运算符过滤掉异常值。然后使用str.strip()和str.lower()方法清洗文字列,使用pd.to_numeric()方法将数字列转换为浮点型数据并填充NaN。最后使用to_csv()方法保存清洗后的数据到CSV文件中。
需要注意的是,具体的数据清洗操作会因数据类型、数据质量和数据量等因素而有所不同,上述代码只是一个示例,您需要根据具体情况进行调整和优化。