【发布时间】:2018-09-08 07:06:45
【问题描述】:
a b
0 100 90
1 30 117
2 90 99
3 200 94
我想用下一个条件创建一个新的df["c"]:
- 如果
a > 50和b 进入(a ± 0.5a),那么c = a - 如果
a > 50和b 不在(a ± 0.5a),那么c = b - 如果
a <= 50,那么*c = a*
输出应该是:
a b c
0 100 90 100
1 30 117 30
2 90 99 90
3 200 94 94
我试过了:
df['c'] = np.where(df.eval("0.5 * a <= b <= 1.5 * a"), df.a, df.b)
但我不知道如何在这句话中包含最后一个条件(If a <= 50, then c = a)。
【问题讨论】:
标签: python pandas conditional