1. 程式人生 > >【資料平臺】pandas按條件去重

【資料平臺】pandas按條件去重

場景:按 A 列去重,保留 B 列中 最小的一行資料。

# -*- coding: utf-8 -*-
'''
@author: user
'''
import pandas as pd

data = [[1,1,1,2,3,3], [0.2,0.3,0.4,0.1,0.2,0.4]]
data = pd.DataFrame(data)
data = [[1,1,1,2,3,3], [0.2,0.3,0.4,0.1,0.2,0.4]]
data = pd.DataFrame(data).T
data.columns=['A', 'B']
print (data)
#按 A 列去重,保留 B 列中 最小的一行資料。
#方法一:
print (data.groupby('A', as_index=False)['B'].min())
#方法二:
print(data.pivot_table(index='A', columns=None, values='B', aggfunc=min) )
#方法三:
data.sort_values(by=['B'],ascending=True)
print (data.drop_duplicates(['A']))