慕田峪4524236
2023-08-15 16:50:03
所以我的數(shù)據(jù)框看起來(lái)像這樣 -ORD_ID|TIME|VOL|VOL_DSCL|SMBL|EXPABC123|2020-05-18 09:01:35|30|10|CHH|2020-05-20DEF123|2020-05-18 09:04:35|50|20|CHH|2020-06-19ABC123|2020-05-18 09:06:45|20|10|CHH|2020-05-20PQR333|2020-05-18 09:13:12|50|10|SSS|2020-06-19DEF123|2020-05-18 09:24:35|20|20|CHH|2020-06-19PQR333|2020-05-18 09:26:23|0|0|SSS|2020-06-19我想按 ORD_ID 分組。并獲取該 ORD_ID 的最后一個(gè)記錄(不對(duì)其他列執(zhí)行任何聚合函數(shù))。即所需的輸出是 -ORD_ID|TIME|VOL|VOL_DSCL|SMBL|EXPABC123|2020-05-18 09:06:45|20|10|CHH|2020-05-20DEF123|2020-05-18 09:24:35|20|20|CHH|2020-06-19PQR333|2020-05-18 09:26:23|0|0|SSS|2020-06-19如何才能實(shí)現(xiàn)這一目標(biāo)?(因此只有 TIME 中每個(gè)唯一 ORD_ID 的最后一條記錄)
1 回答

慕標(biāo)5832272
TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊
你不需要groupby,drop_duplicates會(huì)做:
df.sort_values('TIME').drop_duplicates('ORD_ID',keep='last')
或者如果你真的想要 groupby:
df.groupby('ORD_ID').tail(1)
輸出:
ORD_ID TIME VOL VOL_DSCL SMBL EXP
2 ABC123 2020-05-18 09:06:45 20 10 CHH 2020-05-20
4 DEF123 2020-05-18 09:24:35 20 20 CHH 2020-06-19
5 PQR333 2020-05-18 09:26:23 0 0 SSS 2020-06-19
添加回答
舉報(bào)
0/150
提交
取消