我有一个与此处提到的数据集非常相似的数据集 http://pandas.pydata.org/pandas-docs/stable/10min.html#grouping
>>> df
A B C
0 foo one -1.735400
1 bar one -0.148954
2 foo two 0.103798
3 bar three -0.576249
4 foo two 1.379046
5 bar two 0.802281
6 foo one -0.758771
7 foo three 1.270179
我执行了df.groupby(['A','B'])['C'].sum()
>>> grpd = df.groupby(['A','B'])['C'].sum()
>>> grpd
A B
bar one -0.148954
three -0.576249
two 0.802281
foo one -2.494171
three 1.270179
two 1.482844
Name: C, dtype: float64
在我的特定情况下,A列有storeid,B是月(一年),C是销售价值
目标是找到每月销售超过一定值的所有商店。
示例问题 - 哪个楼层已经售出超过1000美元的任何月份?
我可以在SQL中轻松完成此操作但不确定如何在Pandas数据框中执行此操作。
答案 0 :(得分:0)
如果我理解正确,您可以groupby
MuliIndex级别,然后使用过滤。
grpd.groupby(level='A').filter(lambda grp: (grp > 1000).all())