【发布时间】:2020-11-28 01:01:44
【问题描述】:
所有,
我对如何做到这一点感到困惑。
假设我有下表(我提供了一个只有 1 个 id 的 sn-p,但我有很多 id)
*id* *status* *year*
2 active 2018
2 active 2019
2 dissolved 2019
2 dissolved 2020
3 active 2018
3 dissolved 2019
3 active 2019
3 dissolved 2020
我想过滤它,如果 id 和 year 相同,则取 status = to溶解捐赠的行:
*id* *status* *year*
2 active 2018
2 dissolved 2019
2 dissolved 2020
3 active 2018
3 dissolved 2019
3 dissolved 2020
我试过了:
df.sort_values(['id','year']).drop_duplicates(subset=['id', 'year'],keep='last')
但有时公司会再次从解散状态变为活跃状态,因此当我真的希望该客户在同一年解散状态时,我会获得活跃状态。这就是为什么我想检测状态是否不同,如果是,请保留已溶解的状态。 IE。在哪里保持“最后”我怎么能基本上保持“溶解”状态。
我怎样才能做到这一点?
【问题讨论】:
-
您的解决方案没有标准方法。你需要为这个问题编写自定义函数
-
是的,但是如何,这就是我要问的
-
刚刚发布了如何的回复
标签: python pandas filter duplicates