今天主要记录一下pandas去重复行以及如何分类汇总。以下面的数据帧作为一个例子:
1
2
|
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(要汇总的字段/列以及汇总的方式:求和还是最大最小值或者计数)。完整代码如下图
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)
|
结果展示如下图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_24499417/article/details/81126807