import pandas as pd # 读取csv文件 df = pd.read_csv('uniform.csv',encoding='gbk',dtype=str) # 找到所有重复的行 duplicates = df[df.duplicated(keep=False)] # 根据重复行进行分组 groups = duplicates.groupby(list(duplicates.columns)) # 遍历每个分组,将重复行写入新的csv文件 for _, group in groups: group.to_csv('duplicates.csv', mode='a', header=False, index=False,encoding='gbk')为什么没有输出duplicates.csv文件?
时间: 2024-01-17 17:05:06 浏览: 65
解决pandas使用read_csv()读取文件遇到的问题
可能是因为在遍历每个分组时,使用了 mode='a' 参数,它的作用是将新内容追加到已有文件的末尾,而如果文件不存在,则会新建一个文件。但是在第一次写入时,由于文件不存在,Python 会自动新建文件并写入内容,但此时文件指针已经到达文件末尾,再次写入时就会直接跳过,导致没有写入新的内容。
可以尝试在代码开头加入以下语句,以确保每次运行时都会新建一个文件:
```python
import os
if os.path.exists('duplicates.csv'):
os.remove('duplicates.csv')
```
这样每次运行代码时,如果存在旧文件,就会先删除旧文件,然后重新创建一个新文件进行写入。
阅读全文