【发布时间】:2021-12-28 21:27:27
【问题描述】:
我有一个数据框:
install type id date
2021-11-01 main a1 NA
2021-11-01 main a2 2021-11-02
2021-11-01 main a3 2021-11-02
2021-11-01 main a3 2021-11-02
2021-11-02 down b4 2021-11-05
2021-11-03 main b7 2021-11-05
2021-11-04 main a3 2021-11-05
我想按日期和类型对这些数据进行分组,并计算安装时间低于日期的相同类型的唯一 ID。所以想要的结果是:
date type count
2021-11-02 main 3
2021-11-05 down 1
2021-11-05 main 4
对于2021-11-02 main,它是 3,因为有 3 个具有相同类型和更低日期的唯一 ID(a1、a2、a3),对于 2021-11-05 down 它只有 b4,对于 2021-11-05 main 它是 a1、b7、a2、a3
如何做到这一点?我知道 groupby 和 nunique(),但我不知道如何编写安装条件低于日期。
附言
我需要它来计算每个日期和类型组的保留值
【问题讨论】:
-
您打算在两个日期都计算 NA 吗?
-
@Chris 你是什么意思?我正在计算唯一 ID,如您所见,没有 NA
-
不是所有的
main类型都低于2021-11-05吗?为什么要计算a1而不是a2? -
@Chris 是的,我编辑了它
-
@sammywemmy 还有a1。它具有相同的类型并且安装时间低于日期
标签: python pandas dataframe group-by