Den*_*nJJ 5 python if-statement r pandas
我在学习R和一个简单的ifelse语句之后尝试学习Python.
在RI有:
df$X <- if(df$A == "-1"){-df$X}else{df$X}
Run Code Online (Sandbox Code Playgroud)
但我不确定如何在Python中实现它,我尝试过:
df['X'][df['A'] <1] = -[df['X']
df['X'][df['A'] >1] = [df['X']
Run Code Online (Sandbox Code Playgroud)
但这会导致错误,会感激一些帮助.
ayh*_*han 14
相当于np.where:
import numpy as np
np.where(df['A'] < 1, -df['X'], df['X'])
Run Code Online (Sandbox Code Playgroud)
这将检查列A中的值是否低于1.如果是,则返回相应的值乘以-1 df['X'],否则返回相应的值df['X'].
也就是说,由于链式索引,可能会引发您的错误/警告.而不是df['X'][df['A'] <1]你应该使用df.loc[df['A'] <1, 'X'].然后,您可以按照问题中显示的两个步骤执行相同的操作.
| 归档时间: |
|
| 查看次数: |
3232 次 |
| 最近记录: |