pandas重复行删除操作df.drop_duplicates和df.duplicated的区别
短信预约 -IT技能 免费直播动态提醒
概念
df.duplicated()
使用df.cuplicated()来查看重复数据,返回True,False,数据类型是bool.
也可以指定某一列是否有重复值df.cuplidated(‘colname’),不指定则默认为第一列。
df.dropduplicates(’col‘,keep=‘first’,inplace=False)
用来删除重复行。
实例
读取数据
# %% 提取数据 从sqlite
import pandas as pd
from sqlalchemy import create_engine
'''创建sqlite3连接'''
eg = create_engine('sqlite:///I:/jianguoyun/Udoc/WorkDb/dataset2022.db') #创建数据库连接
# 读取数据库文件
q_store = """
select * from pj_store20220525
"""
# 读取表
cols= ['货号','品类','节庆','库位','合格','换包装','错码','维修','总数量' ]
df = pd.read_sql(q_store,eg)[cols]
计算重复项
# df.duplicated 计算重复项
cond = df.duplicated('货号') # 查看货号相同的项 df.duplicated返回的是布尔值
def_line = df[cond]
def_line
计算有多少个重复行
#有多少个重复行
dep_data = df.duplicated('货号').sum()
dep_data
用df.drop_duplicates提取夏季品类
# 用df.drop_duplicates提取夏季品类
df_category = df.query('节庆=="夏季"').drop_duplicates('品类',keep='last',inplace=False)
df_category['品类'].sort_values()
参数:
- keep ,保留最后last还是第一行first,
- inplace:是否替换原列表,false:不替换,True,替换。
到此这篇关于pandas重复行删除操作df.drop_duplicates和df.duplicated的区别的文章就介绍到这了,更多相关pandas df.drop_duplicates df.duplicated内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341