True当用于乘法时,我们可以利用1 和False0的点。
3 * True -> 3
3 * False -> 0
Run Code Online (Sandbox Code Playgroud)
online我们必须检查列中的值是否等于status。
df['cost'] = df['price'] * df['status'].eq('online') * metric
Run Code Online (Sandbox Code Playgroud)
无论哪里,status的offline cost值都是 0。
上述解决方案依赖于您想要将值设置为 0 的事实。offline如果您想设置offline为 let's 999。那么我们Series.where这里就可以使用了。
df['cost'] = df['price'].mul(metric).where(df['status'].eq('online'), 999)
Run Code Online (Sandbox Code Playgroud)
现在,每个offline值都设置为999.
有用的链接:
| 归档时间: |
|
| 查看次数: |
631 次 |
| 最近记录: |