我想根据两个费用列填充“指标”列。如果“Charge1”在“Charge2”值的正负 5% 以内,则将“指标”设置为 RFP,否则将其留空(参见下面的示例)。
ID Charge1 Charge2 Indicator
1 9.5 10 RFP
2 22 20
3 41 40 RFP
4 65 80
5 160 160 RFP
6 315 320 RFP
7 613 640 RFP
8 800 700
9 759 800
10 1480 1500 RFP
我尝试使用 .loc 方法,但很难确定“Charge1”是否在“Charge2”的 +/- 5% 以内。
最佳答案
In [190]: df.loc[df.eval("Charge2*0.95 <= Charge1 <= Charge2*1.05"), 'RFP'] = 'REP'
In [191]: df
Out[191]:
ID Charge1 Charge2 RFP
0 1 9.5 10 REP
1 2 22.0 20 NaN
2 3 41.0 40 REP
3 4 65.0 80 NaN
4 5 160.0 160 REP
5 6 315.0 320 REP
6 7 613.0 640 REP
7 8 800.0 700 NaN
8 9 759.0 800 NaN
9 10 1480.0 1500 REP
关于python - 根据一列在另一列的 +/- 5% 范围内创建指标列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49240020/