pandas重复行删除操作df.drop_duplicates和df.duplicated的区别是什么
更新:HHH   时间:2023-1-7


今天小编给大家分享一下pandas重复行删除操作df.drop_duplicates和df.duplicated的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    概念

    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的区别是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注天达云行业资讯频道。

    返回开发技术教程...