Python 在各组的熊猫中查找前/后decessor
为了减少复杂性,我修改了整个帖子: 那么,我想要实现什么: 对于具有给定开始日期和结束日期的活动列表,我想返回上一个活动。Previous表示活动在前一个活动的结束日之后开始。但是,如果之前有几个营地,我想返回相同类型的活动。这应该针对我的每个活动进行(通常,我会有分组数据,(想想项目/活动对,其中一个营地有几个项目,我对单个项目的上一个活动感兴趣) 考虑以下数据Python 在各组的熊猫中查找前/后decessor,python,pandas,Python,Pandas,为了减少复杂性,我修改了整个帖子: 那么,我想要实现什么: 对于具有给定开始日期和结束日期的活动列表,我想返回上一个活动。Previous表示活动在前一个活动的结束日之后开始。但是,如果之前有几个营地,我想返回相同类型的活动。这应该针对我的每个活动进行(通常,我会有分组数据,(想想项目/活动对,其中一个营地有几个项目,我对单个项目的上一个活动感兴趣) 考虑以下数据 Campaign | StartDay | EndDay | Type ---------|----------|--------|
Campaign | StartDay | EndDay | Type
---------|----------|--------|------
1 | 1 | 10 | 1
2 | 5 | 15 | 1
3 | 7 | 15 | 2
4 | 11 | 20 | 1
5 | 16 | 25 | 2
因此,在这种情况下,所需的输出如下
Campaign | PreviousCampaign
---------|-----------------
1 | NAN
2 | NAN
3 | NAN
4 | 1
5 | 3
如果第一个条目消失了,就可以了。注意,由于类型条件,5的前一个条目是3
我能够通过活动将表自身合并,查询正确的行和几个步骤来确保满足costraint类型。
如果没有类型约束,这会更容易一些
然而,在研究汤姆·奥格斯普格(tom augspurger)的《现代熊猫》(modern pandas)时,我有一种感觉,旋转、堆叠、融化或组合应该是有效的。但我还没有弄清楚如何工作。你能展示你想要的输出吗?更新了它,并更改了第2项Slighlt的示例。想要的输出有帮助,但仍然很难遵循你想要的逻辑。是“参考活动”在“下一个公司计划”专栏中你想要什么?如果你能解释你为什么要这样做,这可能会更清楚。嘿,我重写并缩短了这个例子。我希望现在更多地关注基本部分。更清楚。但如果之前有两个相同类型的活动,该怎么办?