![](/img/trans.png)
[英]Pandas get postion of last value based on condition for each column (efficiently)
[英]Get Last condition value for each pandas cloumn value
我有一个像这样的 Df:
date_from | date_to | item_id | VALUE_NEW | VALUE_OLD | 成本变量 |
---|---|---|---|---|---|
1900 年 1 月 1 日 00:00:00 | 2022 年 11 月 3 日 15:31:18 | 452953 | 5366,46 | 4024,71 | 33.34% |
2022 年 11 月 3 日 15:31:18 | 2200 年 1 月 1 日 00:00:00 | 452953 | 9122,57 | 5366,46 | 69.99% |
1900 年 1 月 1 日 00:00:00 | 2022 年 11 月 3 日 15:31:18 | 452954 | 5366,46 | 4024,71 | 33.34% |
2022 年 11 月 3 日 15:31:18 | 2200 年 1 月 1 日 00:00:00 | 452954 | 9122,57 | 5366,46 | 69.99% |
1900 年 1 月 1 日 00:00:00 | 21/7/2021 16:30:46 | 452961 | 6170,98 | 4024,71 | 53.33% |
21/7/2021 16:30:46 | 2022 年 11 月 3 日 15:31:09 | 452961 | 5312 | 6170,98 | 13.92% |
2022 年 11 月 3 日 15:31:09 | 2200 年 1 月 1 日 00:00:00 | 452961 | 9122,57 | 5312 | 71.74% |
1900 年 1 月 1 日 00:00:00 | 13/10/2021 14:39:55 | 801286 | 4052,1 | 1332,8 | 204.03% |
13/10/2021 14:39:55 | 13/10/2021 14:43:09 | 801286 | 4,4732 | 4052,1 | 99.89% |
13/10/2021 14:43:09 | 2022 年 3 月 2 日 17:16:23 | 801286 | 4473,2 | 4,4732 | 99900.00% |
2022 年 3 月 2 日 17:16:23 | 2200 年 1 月 1 日 00:00:00 | 801286 | 4946,8 | 4473,2 | 10.59% |
我需要检查每个 item_id,并获取 cost_var > 60% 的最后一行。 如果它是最后一行,那没关系,但如果有下一行,它 <60%,我必须删除最后一行>60%。 输出应如下所示:
date_from | date_to | item_id | VALUE_NEW | VALUE_OLD | 成本变量 |
---|---|---|---|---|---|
2022 年 11 月 3 日 15:31:18 | 2200 年 1 月 1 日 00:00:00 | 452953 | 9122,57 | 5366,46 | 69.99% |
2022 年 11 月 3 日 15:31:18 | 2200 年 1 月 1 日 00:00:00 | 452954 | 9122,57 | 5366,46 | 69.99% |
2022 年 11 月 3 日 15:31:09 | 2200 年 1 月 1 日 00:00:00 | 452961 | 9122,57 | 5312 | 71.74% |
项目 802186 没有返回任何值,因为最后一行>60% (99900.00%) 有下一行,并且 cost_var<60% (10.59%)...有可能吗? 我找不到解决它的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.