【问题标题】:filter dataframe after groupby and nunique in pandas在 pandas 中的 groupby 和 nunique 之后过滤数据帧
【发布时间】:2018-11-30 13:48:16
【问题描述】:

我尝试了df.groupby("item")["variable"].nunique(),它返回每个项目对象的唯一计数。

我想过滤以仅返回“变量”的计数 > 3 以 Groupby 项为条件...有方法吗?

【问题讨论】:

    标签: python pandas dataframe group-by pandas-groupby


    【解决方案1】:

    当您希望 groupby 映射到输入的每一行时,请考虑 transform

    df = df[df.groupby("item")["variable"].transform('nunique') > 3]
    

    【讨论】:

    • 最后,对于dataFrame的长度,使用len(df)
    • 实际上想要这样的东西:df["item"][df.groupby("item")["variation"].transform('nunique') > 3].nunique()sum(df.groupby("item")["variation"].nunique() > 3) 计算“项目”的数量,因为 len(df) 基本上是原始 df 的长度。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-24
    • 2015-02-13
    • 1970-01-01
    • 2019-11-30
    • 2019-09-11
    • 2021-12-28
    • 1970-01-01
    相关资源
    最近更新 更多