我有一个这样的数据框
Name COST Timestamp
0 c 8 2023-09-20 15:14:46
1 a 8 2023-09-20 15:14:48
2 c 9 2023-09-20 15:14:55
3 b 10 2023-09-20 15:15:00
4 c 4 2023-09-20 15:15:02
5 a 9 2023-09-20 15:15:04
6 b 3 2023-09-20 15:15:12
7 a 3 2023-09-20 15:15:17
8 c 6 2023-09-20 15:15:20
9 c 6 2023-09-20 15:15:29
我想要的是创建一个新的dataframe。它将查找a,B,c的序列(顺序在这里无关紧要),sum_cost是a,b,c的成本之和,它的time_stamp将是a,b,c的最后一个time_stamp。如果有多个相同名称的条目,比如B,c,c,b,b,a,则取最后一个c,然后取最后一个b和a。
- 一个详细的例子 *:
输出应该来自给定的 Dataframe ,将被构造成这样,对于第一个,它将采用索引1的‘a’、索引2的‘c’(因为这在索引0的‘c’之后)和索引3的‘b’,对于该组,sum_cost将是27,并且timestamp将是2023-09- 2000:14:26,它是索引3的‘b’,因为它对于该组是最后一个。下一组将采用索引4的'c',索引5的'a'和索引6的'B',sum_cost将为16,timestamp将为2023-09-20 00:06:51,这是索引6的'b',因为它是这个序列的最后一个。
输出将如下所示,
sum_cost Timestamp
0 27 2023-09-20 15:15:00
1 16 2023-09-20 15:15:12
请帮我拿这个。谢谢你,谢谢!
2条答案
按热度按时间yi0zb3m41#
你需要构建一个自定义的分组器,为此需要一个循环,这里使用一个自定义函数:
输出量:
中间体组:
ctehm74n2#
你可以试试这个代码你需要改变你的数据框的路径