我想直接过滤大熊猫groupBy的结果,而不必先将groupBy结果存储在变量中。例如:
df = pd.DataFrame([("a", 1)]*3+[("b", 1)]*2+[("c", 1)], columns=["title", "counts"])
res = df.groupby("title").agg({"counts":"sum"}) # I want to skip creating res
my_res = res.loc[res.counts >2]
在上面的示例中,我想使用单线创建my_res
。在Spark / Scala中,可以简单地通过链接过滤器操作来实现,但是在熊猫中,过滤器具有不同的用途。
答案 0 :(得分:1)
使用query
链接此步骤:
df.groupby("title").agg({"counts":"sum"}).query('counts > 2')
counts
title
a 3