1. 程式人生 > >pandas去重複行並分類彙總

pandas去重複行並分類彙總

今天主要記錄一下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)

結果展示如下圖: