Python 在pandas中的groupby和nunique之后过滤数据帧
我尝试了Python 在pandas中的groupby和nunique之后过滤数据帧,python,pandas,dataframe,group-by,pandas-groupby,Python,Pandas,Dataframe,Group By,Pandas Groupby,我尝试了df.groupby(“item”)[“variable”].nunique(),它返回每个item对象的唯一计数 我想筛选只返回Groupby item条件下“variable”>3的计数。。。是否有一种方法?当您希望将groupby映射到输入的每一行时,请考虑transform: df = df[df.groupby("item")["variable"].transform('nunique') > 3] 当您希望将groupby映射到输入的每一行时,请考虑transfor
df.groupby(“item”)[“variable”].nunique()
,它返回每个item对象的唯一计数
我想筛选只返回Groupby item条件下“variable”>3的计数。。。是否有一种方法?当您希望将
groupby
映射到输入的每一行时,请考虑transform
:
df = df[df.groupby("item")["variable"].transform('nunique') > 3]
当您希望将
groupby
映射到输入的每一行时,请考虑transform
:
df = df[df.groupby("item")["variable"].transform('nunique') > 3]
最后,对于数据帧的长度,使用
len(df)
。实际上需要这样的东西:df[“item”][df.groupby(“item”)[“variation”].transform('nunique')>3.nunique()
或sum(df.groupby(“item”)[“variation”].nunique()>3)
计算“items”的数量,因为len(df)
基本上是原始df的长度。最后,对于数据帧的长度,使用len(df)
。实际上需要这样的东西:df[“item”][df.groupby(“item”)[“variation”].transform('nunique')>3]。nunique()
或sum(df.groupby(“item”)[“variation”].nunique()>3)
计算“项目”的数量,因为len(df)
基本上是原始df的长度。