Python (十五)pandas(三)
2023-12-22 22:29:44
程序员的公众号:源1024,获取更多资料,无加密无套路!
最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》,《Java并发编程实战》等等
获取方式: 关注公众号并回复 电子书 领取,更多内容持续奉上
drop_duplicates()
根据所有列删除重复的行
import pandas as pd
import numpy as np
from pandas import Series,DataFrame
df = DataFrame([['小班','10'],['中班','15'],['大班','20'],['大班','20']],columns=['name','num'])
print(df.drop_duplicates())
#输出
name num
0 小班 10
1 中班 15
2 大班 20
删除指定列的重复数据,使用subset参数
df1 = DataFrame([['小班','10'],['中班','15'],['大班','20'],['大班','15']],columns=['name','num'])
print(df1.drop_duplicates(subset=['num']))
print(df1.drop_duplicates(subset='num'))
#输出
name num
0 小班 10
1 中班 15
2 大班 20
name num
0 小班 10
1 中班 15
2 大班 20
删除指定列的重复数据,保留最后一次数据,使用keep
df = DataFrame([['小班','10'],['中班','15'],['大班','20'],['小班','10']],columns=['name','num'])
print(df.drop_duplicates(subset=['name','num'],keep='last'))
#输出
name num
1 中班 15
2 大班 20
3 小班 10
删除重复数据后,重新设置行索引,使用ignore_index
df = DataFrame([['小班','10'],['中班','15'],['大班','20'],['小班','10']],columns=['name','num'])
print(df.drop_duplicates(subset=['name','num'],keep='last',ignore_index=True))
#输出
name num
0 中班 15
1 大班 20
2 小班 10
直接删除原DataFrame的重复数据,使用inplace=True
df = DataFrame([['小班','10'],['中班','15'],['大班','20'],['大班','20']],columns=['name','num'])
df_2 = df.drop_duplicates(inplace=True)
print(df_2)
print(df)
#输出
None
name num
0 小班 10
1 中班 15
2 大班 20
系列文章索引
文章来源:https://blog.csdn.net/feikillyou/article/details/135157122
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!