这似乎很简单,但我无法弄清楚。因此,给定以下数据集:df = pd.DataFrame(np.random.randint(0,100,size=(50, 3)), columns=list('ABC'))df['Mean'] = df.mean(axis=1) A B C Mean0 26 6 73 35.0000001 89 55 29 57.6666672 8 89 87 61.3333333 83 25 64 57.3333334 35 89 97 73.666667如何替换单行中高于该行的平均列的所有值?所需的输出: A B C Mean0 26 6 0 35.0000001 0 55 29 57.6666672 8 0 0 61.3333333 0 25 0 57.3333334 35 0 0 73.666667我已经试过了:df.apply(lambda x: 0 if x > df['Mean'] else x)这导致ValueError:ValueError:('系列的真值不明确。请使用a.empty,a.bool(),a.item(),a.any()或a.all()。','发生在索引A' )
添加回答
举报
0/150
提交
取消