首页 > 解决方案 > 按 ID 和日期合并行并获取两个变量的最大值和公共值

问题描述

我有带有 ID、每个 ID 的日期和每个日期的时间的数据框。此外,一个二进制变量 (Y) 得到 1 或 0,另一个名义变量 (X)。我想按 ID 和日期合并行,并取每个(ID,日期)的最大 Y 值,并取每个(ID,日期)的公共 X 值,但不管 0 值级别。

注意:ID、日期和时间是索引,它们是排序的。

数据说明:

ID  Date        Time    Y       X
1   08/27/2019  18:00   0       123
                19:00   0       123
                20:00   1       456
2   08/27/2019  18:00   0       0
                19:00   0       0
                20:00   1       456
3   08/27/2019  18:00   1       123
                19:00   0       0
                20:00   1       456
3   08/28/2019  18:00   0       0
                19:00   0       0
                20:00   0       0

预期结果:

ID  Date        Y       X
1   08/27/2019  1       123
2   08/27/2019  1       456
3   08/27/2019  1       123
3   08/28/2019  0       0

注意:对于 ID #3 的第一次观察(在 2019 年 8 月 27 日),拍摄了 123,因为它更早(就时间而言)。

标签: pandas

解决方案


推荐阅读