【发布时间】:2019-08-30 18:47:45
【问题描述】:
我有以下数据框:
d = {'group': ['a', 'b', 'c', 'b', 'b', 'c', 'a', 'b', 'a'],
'cum_sum': [1, 4, 3, 9, 15, 6, 3, 17, 4]}
df = pd.DataFrame(data=d)
我想过滤整个数据帧,只保留每组中 cum_sum 小于最大 cum_sum x 0.8 的记录。
我尝试使用 lambda 参数并对其进行过滤:
grouped = df.groupby('group')
grouped.filter(lambda x: x[x.cum_sum] <= x[x.cum_sum.max()])
但我根本不知道从哪里开始...有什么想法吗..?
根据评论更新!
【问题讨论】:
-
请给我们样本数据,而不是其中的图像。
-
抱歉,我更新了我的帖子
标签: python pandas filtering grouping subset