• Pandas常用操作


    1. 使用 drop_duplicates 去重

    1.1 初始化数据

    df = pd.DataFrame({'stu_name': ['Tom', 'Tony', 'Jack', 'Jack', np.nan], 'stu_age': [16, 16, 15, np.nan, 21]})
    
      stu_name  stu_age
    0    Nancy     17.0
    1     Tony     16.0
    2     Tony     16.0
    3     Jack     21.0
    4     Jack      NaN
    

    1.2 对一列去重

    df_clean = df.drop_duplicates(subset=['stu_name'])
    print(df)
    
      stu_name  stu_age
    0    Nancy     17.0
    1     Tony     16.0
    3     Jack     21.0
    

    1.3 对多列去重(多列同时满足重复)

    df_clean2 = df.drop_duplicates(subset=['stu_name', 'stu_age'])
    print(df_clean2)
    
      stu_name  stu_age
    0    Nancy     17.0
    1     Tony     16.0
    3     Jack     21.0
    4     Jack      NaN
    

    2. 使用 duplicated 配合 drop 去重

    2.1 初始化数据

    df = pd.DataFrame({'stu_name': ['Tom', 'Tony', 'Jack', 'Jack', np.nan], 'stu_age': [16, 16, 15, np.nan, 21]})
    
      stu_name  stu_age
    0    Nancy     17.0
    1     Tony     16.0
    2     Tony     16.0
    3     Jack     21.0
    4     Jack      NaN
    

    2.2 对一列去重

    duplicate_df = df[df.duplicated('stu_name')]
    clean_df = df.drop(duplicate_df.index)
    
    1. 使用 duplicated 先筛选出重复的行
    2. 使用 drop 删除掉重复行

    3. drop_duplicatesduplicated 常用参数含义

    subset: 单个列名或者 一组列名数组(可选)。如果不设置该参数,则默认对全部列进行去重
    keep: 保留的列

    • 'first': 只保留第一个,其他重复项被删除(默认)
    • 'last': 只保留最后一个,其他重复项被删除
    • False: 出现重复项则都被删除

    尊重写作权利,转载请注明出处 ^_^
  • 相关阅读:
    扫描与爆破
    复习与PKI技术

    IIS与FTP
    IIS与WEB
    DNS部署与安全
    DHCP服务部署与安全
    文件共享服务CIFS
    NTFS权限
    关于操作运算符的一些小练习
  • 原文地址:https://www.cnblogs.com/convict/p/14855162.html
Copyright © 2020-2023  润新知