问题描述
我正在尝试从Python3中的csv文件中删除重复的列。我能够使代码正常运行...但是,当我尝试打印已处理的行数时,我在codio中收到空白响应。
对运行的响应返回为1001codio @ sigma-portal:〜/ workspace $
谁能指出我该如何解决?理想情况下,我希望它打印出删除了多少列。
import csv
import re
data = []
import csv
input_file = 'customerdata.csv'
output_file = 'outputcustomerdata.csv'
cols_to_remove = [11] # Column indexes to be removed (starts at 0)
cols_to_remove = sorted(cols_to_remove,reverse=True) # Reverse so we remove from the end first
row_count = 0 # Current amount of rows processed
with open(input_file,"r") as source:
reader = csv.reader(source)
with open(output_file,"wt") as result:
writer = csv.writer(result)
for row in reader:
row_count += 1
print('\r{0}'.format(row_count),end='') # Print rows processed
for col_index in cols_to_remove:
del row[col_index]
writer.writerow(row)
解决方法
尝试熊猫
import pandas as pd
df = pd.read_csv('customerdata.csv')
df = df.drop('column_name',axis=1)
# save your file
df.to_csv('outputcustomerdata.csv',encoding='utf-8')
print(df)