为了账号安全,请及时绑定邮箱和手机立即绑定

从 pandas .max() 中的多个对象获取最大值

从 pandas .max() 中的多个对象获取最大值

翻翻过去那场雪 2022-08-16 10:52:33
我有一个这样的数据集:ID   column_1  column_2 column_3 column 4AAA   0.1        0.6      0.1     0.2AAA   0.2        0.2      0.2     0.1BBB   0.5        0.5      0.1     0.1BBB   0.1        0.3      0.1     0.2output = (df['column_1'] – df['column_2']) / (df['column_3'], 5 * df['column_1'], 0.01 * abs(df['column_4'])).max(axis=1)但它给了我一个错误:SyntaxError: invalid character in identifier预期的输出可以描述为这个例子:对于第一行 - 输出 = (0.1 - 0.6) / max(0.1, 5*0.1, 0.01*abs(0.2)) = -0.5/0.5 = -1 有人可以给我一些提示吗?提前致谢。
查看完整描述

2 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

解决方案是通过连接将它们连接起来,然后按行使用:max


s = pd.concat([df['column_3'], 

               5 * df['column_1'], 

               0.01 * abs(df['column_4'])], axis=1).max(axis=1)

output = (df['column_1'] - df['column_2']) / s

print (output)

0   -1.0

1    0.0

2    0.0

3   -0.4

dtype: float64


查看完整回答
反对 回复 2022-08-16
?
Helenr

TA贡献1780条经验 获得超4个赞

你的减号并不是真正的减号。你有em破折号而不是短划线。(df['column_1'] – df['column_2'])



查看完整回答
反对 回复 2022-08-16
  • 2 回答
  • 0 关注
  • 178 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号