pandas去重复行并分类汇总的实现方法

yipeiwu_com5年前Python基础

今天主要记录一下pandas去重复行以及如何分类汇总。以下面的数据帧作为一个例子: 

import pandas as pd
data=pd.DataFrame({'产品':['A','A','A','A'],'数量':[50,50,30,30]})

pandas判断dataframe是否含有重复行数据用:df.duplicated()

 第一次出现的数据为False.重复的数据行就被记录为True。

去掉重复行数据使用data.drop_duplicates().

 可以看到索引乱了,我们使用data.reset_index(),里面的参数drop=True,表明要舍掉原来的索引,不然的话原来的索引会保留下来。

 分类汇总主要使用groupby(表明汇总的条件列)以及agg(要汇总的字段/列以及汇总的方式:求和还是最大最小值或者计数)。完整代码如下图

# -*- coding: utf-8 -*-
"""
Created on Fri Jul 20 09:08:10 2018
@author: FanXiaoLei
"""
import pandas as pd
data=pd.DataFrame({'产品':['A','A','A','A'],'数量':[50,50,30,30]})
if data.duplicated:
  dataA=data.drop_duplicates().reset_index(drop=True)
print(dataA)
dataB=dataA.groupby(by='产品').agg({'数量':sum})
print('数据汇总结果:')
print(dataB)

结果展示如下图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python编程中对super函数的正确理解和用法解析

当在子类需要调用父类的方法时,在python2.2之前,直接用类名调用类的方法,即非绑定的类方法,并把自身对象self作参数传进去。 class A(object): def...

Python使用try except处理程序异常的三种常用方法分析

本文实例讲述了Python使用try except处理程序异常的三种常用方法。分享给大家供大家参考,具体如下: 如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处...

Django之PopUp的具体实现方法

步骤一:index页面处理 <!DOCTYPE html> <html lang="en"> <head> <meta charset=...

python使用socket进行简单网络连接的方法

本文实例讲述了python使用socket进行简单网络连接的方法。分享给大家供大家参考。具体如下: import socket print "Creating socket...",...

python输入多行字符串的方法总结

Python中输入多行字符串: 方法一:使用三引号 >>> str1 = '''Le vent se lève, il faut tenter de vivre....