python中读取csv并按照某列去重得出新的csv
时间: 2023-10-29 09:12:48 浏览: 63
答案:
您好!针对您的问题,可以使用pandas模块读取csv文件,并使用drop_duplicates方法按照指定列去重,最后使用to_csv方法保存到新的csv文件中。
下面是示例代码:
```python
import pandas as pd
# 读取原始csv文件
data = pd.read_csv('filename.csv')
# 按照指定列去重
new_data = data.drop_duplicates(subset=['column_name'])
# 保存到新的csv文件中
new_data.to_csv('new_filename.csv', index=False)
```
其中,'filename.csv'为原始csv文件路径,'column_name'为按照哪一列进行去重,'new_filename.csv'为新的csv文件路径。请您根据实际情况进行修改。
希望能够帮助您!
相关问题
python读取csv文件某一列后,去重那列内容
可以使用Python的csv模块和set集合来读取csv文件某一列并去重。以下是一个简单的例子,假设我们要读取一个名为data.csv的csv文件,并且对第二列进行去重:
```python
import csv
with open('data.csv', newline='', encoding='utf-8') as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='"')
# 第二列的数据存储在一个列表中
column2 = [row[1] for row in reader]
# 利用set集合去重
unique_column2 = set(column2)
# 打印去重后的结果
print(unique_column2)
```
在这个例子中,我们使用了列表推导式来将第二列的数据存储在一个列表中,然后利用set集合对该列表进行去重。最后打印去重后的结果即可。
python读取csv文件某一列并另存为csv文件
要读取csv文件某一列并另存为csv文件,可以使用Python的csv模块中的DictReader和DictWriter方法。具体步骤如下:
1. 使用DictReader方法读取原始csv文件,将其转换为字典格式。
2. 通过字典的键值对,获取需要的列数据。
3. 使用DictWriter方法将所需列数据写入新的csv文件中。
下面是一个示例代码:
```
import csv
# 读取原始csv文件
with open('input.csv', 'r') as input_file:
reader = csv.DictReader(input_file)
# 获取需要的列数据
column_data = [row['column_name'] for row in reader]
# 将所需列数据写入新的csv文件中
with open('output.csv', 'w', newline='') as output_file:
writer = csv.DictWriter(output_file, fieldnames=['column_name'])
writer.writeheader()
for data in column_data:
writer.writerow({'column_name': data})
```
其中,'column_name'需要替换为实际需要读取的列名。另外,需要注意的是,如果原始csv文件中存在空行,需要在打开文件时指定newline=''参数,否则会出现空行。