cateory Percentage AB 99 CD 65 EF 12 GH 25 IJ 90 KL 100
如果CD的百分比小于70,则将其更改为71,否则现有值很好。如果EF的百分比小于20,则将其更改为21,否则现有值很好。如果GH的百分比小于30,则将其更改为45,否则现有值为。对于AB,现有值很好
输出量
cateory Percentage
AB 99
CD 65
EF 21
GH 45
IJ 90
KL 100
问题来源:stackoverflow
通过比较两列来创建要替换的元组列表,如果匹配则替换为new
值-元组的最后一个值:
L = [('CD', 70, 71), ('EF', 20, 21), ('GH', 30, 45)]
for cat, less, new in L:
m = df['cateory'].eq(cat) & df['Percentage'].lt(less)
df.loc[m, 'Percentage'] = new
print (df)
cateory Percentage
0 AB 99
1 CD 71
2 EF 21
3 GH 45
4 IJ 90
5 KL 100
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。