zoukankan      html  css  js  c++  java
  • 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: 出现重复项则都被删除

    尊重写作权利,转载请注明出处 ^_^
  • 相关阅读:
    实验吧因缺思汀的绕过注入解析
    python模块中requests参数stream
    土司论坛nc反弹神器使用方法
    msf web脚本反弹shell
    python 多线程
    metasploit后门维持技术
    ew做socks5代理
    双内网渗透代理之reGeorg+Proxifier
    SVN源码泄露漏洞
    Java反射的实例
  • 原文地址:https://www.cnblogs.com/convict/p/14855162.html
Copyright © 2011-2022 走看看