【发布时间】:2022-08-12 16:58:03
【问题描述】:
给定以下数据框,我想根据创建的列获取所有教师的前 3 次出现,并附加一列来指示外观。
我试过 groupby 但我不知道如何保留前 3 个实例。
data = pd.DataFrame(
{\'id\': [1, 2, 3, 4, 5, 6, 7, 8, 9,],
\'Section\': [\'A\', \'A\', \'A\', \'B\', \'B\', \'B\',
\'C\', \'C\', \'C\'],
\'Teacher\': [\'Kakashi\', \'Kakashi\', \'Iruka\',
\'Kakashi\', \'Kakashi\', \'Kakashi\',
\'Iruka\', \'Iruka\', \'Guy\'],
\'created\': [datetime(2022,7,11), datetime(2022, 7, 12), datetime(2022, 7, 13),
datetime(2022, 7, 14), datetime(2022, 7, 15), datetime(2022, 7, 16),
datetime(2022, 7, 17), datetime(2022, 7, 18), datetime(2022, 7, 19), ]})
前任。输出
_id Section Teacher created appearance_order
1. A Kakashi datetime(2022,7,11). 1
2. A Kakashi datetime(2022, 7, 12) 2
4. A Kakashi datetime(2022, 7, 14) 3
3. B Iruka datetime(2022, 7, 13) 1
7. C. Iruka. datetime(2022, 7, 17) 2
8. C. Iruka. datetime(2022, 7, 18) 3
9. C. Guy. datetime(2022, 7, 19) 1