脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - pandas去重复行并分类汇总的实现方法

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

2021-05-24 00:21qq_24499417 Python

这篇文章主要介绍了pandas去重复行并分类汇总的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

?
1
2
import pandas as pd
data=pd.dataframe({'产品':['a','a','a','a'],'数量':[50,50,30,30]})

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

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

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

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

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

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

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
# -*- 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)

结果展示如下图:

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_24499417/article/details/81126807

延伸 · 阅读

精彩推荐