假设数据帧如下:
ID Date1 Date2 Col1 Col2 DateDiff
22000118 2019-11-06 2019-11-15 0.562231 0.470641 9 days
22000118 2019-11-06 2019-12-20 0.375000 0.319872 44 days
30 2019-11-06 2019-11-15 0.916047 0.730626 9 days
30 2019-11-06 2019-12-20 0.519936 0.423861 44 days
22000118 2020-11-05 2025-12-19 0.316772 0.301951 1870 days
30 2020-11-05 2026-12-18 0.256964 0.234729 2234 days
30 2020-11-05 2027-12-17 0.250835 0.230236 2598 days
22000118 2019-11-06 2020-01-17 0.330995 0.287567 72 days
22000118 2020-11-05 2026-12-18 0.310234 0.296930 2234 days
22000118 2020-11-05 2027-12-17 0.305502 0.293349 2598 days
30 2019-11-06 2020-01-17 0.443920 0.366206 72 days
30 2020-11-05 2025-12-19 0.264916 0.240628 1870 days我想按列ID, Date1和DateDiff对其进行排序(其中Date1为datetime64类型,DateDelta为timedelta64类型),并添加一个具有订单号的列,如以下示例所示:
ID Date1 Date2 Col1 Col2 DateDiff Order
30 2019-11-06 2019-11-15 0.916047 0.730626 9 days 1
30 2019-11-06 2019-12-20 0.519936 0.423861 44 days 2
30 2019-11-06 2020-01-17 0.443920 0.366206 72 days 3
30 2020-11-05 2025-12-19 0.264916 0.240628 1870 days 1
30 2020-11-05 2026-12-18 0.256964 0.234729 2234 days 2
30 2020-11-05 2027-12-17 0.250835 0.230236 2598 days 3
22000118 2019-11-06 2019-11-15 0.562231 0.470641 9 days 1
22000118 2019-11-06 2019-12-20 0.375000 0.319872 44 days 2
22000118 2019-11-06 2020-01-17 0.330995 0.287567 72 days 3
22000118 2020-11-05 2025-12-19 0.316772 0.301951 1870 days 1
22000118 2020-11-05 2026-12-18 0.310234 0.296930 2234 days 2
22000118 2020-11-05 2027-12-17 0.305502 0.293349 2598 days 3我已经知道如何使用sort_values对其进行排序,但我不知道如何添加带有订单号的最后一列。
发布于 2021-05-26 00:20:34
在按sort_values排序之后
df['Order'] = df.groupby(['ID','Date1']).cumcount()+1https://stackoverflow.com/questions/67691849
复制相似问题