在熊猫数据框中具有条件的groupby

时间:2020-03-24 15:09:42

标签: python-3.x pandas

我需要根据包括两列的条件进行分组,例如,我具有以下数据框:

item   start_date    end_date
A      10/03/2019    31/03/2019
B      10/03/2019    31/03/2019
A      31/03/2019    10/04/2019
B      31/03/2019    10/04/2019

如果end_date等于start_date并且结果行应具有第一行的start_date和第二行的end_date,则需要对项进行分组。

item   start_date    end_date
A      10/03/2019    10/04/2019
B      10/03/2019    10/04/2019

一个简单的例子:

item   start_date    end_date
A          a             b
A          b             c
A          d             e
A          e             f

所需结果:

   item   start_date    end_date
    A          a             c
    A          d             f

1 个答案:

答案 0 :(得分:0)

我认为按值对DataFrame进行排序是可以的。这也取决于您的目标。

df = df.sort_values(by=['start_date', 'end_date']).reset_index(drop=True)

然后,您可以迭代已排序的行,并应用一个可以满足您需要的函数。我看不到对此的映射解决方案。