2024-10-02 12:29:04 发布
网友
我有一个由一个ID、一个分类变量“a”和一个数字变量“B”组成的数据集。 我想按“A”分组,并从每个组中过滤行,以仅获得avobe或等于中位数“B”的行(应为每个组计算中位数)。 例如:
我的预期结果是:
为类别1的中位数=0.5,类别2的中位数为0.3。 谢谢大家!
out = df[df.groupby("A")["B"].transform(lambda x: x >= x.median())] print(out)
印刷品:
ID A B 0 1 Category 1 0.5 3 4 Category 1 0.6 4 5 Category 2 0.4
印刷品:
相关问题 更多 >
编程相关推荐