合并文件夹下 Excel 文件并去重(xlsx 与 CSV 格式)
- xlsx 格式
代码如下:
import pandas as pd
#
# 此处的Excel_dir 可以是组件,‘查找文件’的返回值
excel_dir = ['//mac/Home/Desktop/考试信息数据归档/人员信息2.xlsx', '//mac/Home/Desktop/考试信息数据归档/人员信息.xlsx']
li = []
for i in excel_dir:
li.append(pd.read_excel(i))
print('已合并' + i)
# 合并完成后的excel,是放在excel文件夹下的
writer = pd.ExcelWriter('//mac/Home/Desktop/考试信息数据归档/人员信息汇总1.xlsx')
pd.concat(li).to_excel(writer, 'Sheet1', index=False)
writer.save()
print('合并完成')
frame = pd.read_excel('//mac/Home/Desktop/考试信息数据归档/人员信息汇总1.xlsx')
data = pd.DataFrame(frame)
print(data)
data.drop_duplicates(['*账号'], keep='first', inplace=True)
# drop_duplicates用法:subset=‘需要去重复的列名’,keep=‘遇到重复的时保留第一个还是保留最后一个’,inplace=‘去除重复项,还是保留重复项的副本’
data.to_excel('//mac/Home/Desktop/考试信息数据归档/人员信息汇总1.xlsx')
print('去重完成')
合并是按照 Excel 的表头去合并的,会将相同表头下的数据合并。
2、CSV 格式
代码如下:
# 同样 csv_list也可以是组件,‘查找文件’的返回值
csv_list = ['//mac/Home/Desktop/test/新浪微博 IDFA (2).csv', '//mac/Home/Desktop/test/新浪微博 IDFA (1).csv']
print(u'共发现%s个CSV文件'% len(csv_list))
print(u'正在处理............')
for i in csv_list:
fr = open(i,'r').read()
with open('//mac/Home/Desktop/test/新浪微博 IDFA 4.csv','a') as f:
f.write(fr)
print(u'合并完毕!')
回帖内容已被屏蔽。
老师,scv 的例子是不是只合并没去重 😜
这个必须点赞👍