怎么用python清洗csv数据
时间: 2023-09-05 18:11:44 浏览: 155
使用Python清洗CSV数据可以通过以下步骤完成:
1. 导入所需的库:
```python
import csv
```
2. 打开CSV文件并读取数据:
```python
with open('input.csv', 'r') as file:
reader = csv.reader(file)
data = list(reader)
```
3. 清洗数据:
可以根据需要进行以下操作:
- 删除不必要的列:
```python
# 删除第2列
for row in data:
del row[1]
```
- 删除空白行:
```python
# 删除空白行
data = [row for row in data if any(row)]
```
- 删除重复行:
```python
# 删除重复行
data = [list(t) for t in set(tuple(row) for row in data)]
```
- 修改特定值:
```python
# 将特定值替换为新值
for row in data:
if row[2] == 'old_value':
row[2] = 'new_value'
```
- 格式化日期或时间数据:
```python
import datetime
for row in data:
date_str = row[3] # 日期/时间所在的列
date_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d') # 将字符串转换为日期对象
formatted_date = date_obj.strftime('%d-%m-%Y') # 格式化日期对象为指定格式的字符串
row[3] = formatted_date # 更新原始数据
```
4. 保存清洗后的数据到新的CSV文件:
```python
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(data)
```
以上是一个基本的示例,你可以根据自己的需求进行更多的数据清洗操作。
阅读全文