读取文件
数据
id name id_no
1 tom 001
2 jack 002
3 tom 003
4 jane 004
5 tom 001
读取文件,并指定列数据的类型
df=pd.read_excel('data/a.xlsx',converters={'id':str,'name':str,'id_no':str})
重复项判断
判断name列中是否有重复项
id_no=df.duplicated(subset=['name'])
print(id_no)
print(id_no.any())
# 0 False
# 1 False
# 2 True
# 3 False
# 4 True
# dtype: bool
# True
# any() 相当于对以上所有数据进行or操作
# all() 相当于对以上所有数据进行and操作
# 可以通过any() 来判断是否有重复的,如果显示为True,说明该列有重复数据
判断name和id_no是否有同时重复的重复项
id_no=df.duplicated(subset=['name','id_no'])
print(id_no)
print(id_no.any())
判断是否存在整行重复的情况
print(df.duplicated().any())
重复项显示
显示id_no重复的行的内容
print(df[df['id_no'].duplicated() == True])
重复项去除并存储
去除id_no重复的行内容,并存储到excel文件中
# 仅存储id和id_no两列
no_duplicates=df.drop_duplicates(subset=['id_no'])[['id','id_no']]
no_duplicates.to_excel('data/c.xlsx',sheet_name="去重后名单2",index=False)