我有資料框:
ID DATE_1 DATE_2
12 01.01.2015 01.01.2021
12 01.01.2016 01.01.2021
12 01.01.2017 01.01.2019
12 01.01.2012 01.01.2021
13 01.01.2011 01.01.2021
13 01.01.2014 01.01.2020
13 01.01.2010 01.01.2018
13 01.01.2013 01.01.2016
14 01.01.2012 01.01.2021
14 01.01.2016 01.01.2020
14 01.01.2017 01.01.2021
14 01.01.2018 01.01.2021
我想按 ID 分組,并使用最新的 DATE_2 和最舊的 DATE_1 留下記錄。怎么做?
uj5u.com熱心網友回復:
IIUC,這是一個經典的groupby agg。您需要將日期設定datetime為有意義的比較型別:
(df
.assign(DATE_1=pd.to_datetime(df['DATE_1']),
DATE_2=pd.to_datetime(df['DATE_2'])
)
.groupby('ID')
.agg({'DATE_1': 'min', 'DATE_2': 'max'})
)
輸出:
DATE_1 DATE_2
ID
12 2012-01-01 2021-01-01
13 2010-01-01 2021-01-01
14 2012-01-01 2021-01-01
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/409842.html
標籤:
上一篇:具有多變數函式的回歸
