假设我具有以下数据框:
Priority Color Risk
1 1 Green 8
2 9 Red 10
3 5 Orange 4
我想添加一列“分数”,该列基于与其他列相关的多个条件为每一行计算分数。例如,条件和得分可以是:
在这种情况下,第1行将获得1分,第2行将获得3分,第3行将获得0分。
有人知道我该怎么做到吗?
答案 0 :(得分:1)
您可以使用.astype
对转换为整数的布尔条件求和:
df['score'] = ( (df['Priority'] > 5).astype(int)
+ (df['Color'] == 'Red').astype(int)
+ (df['Risk'] > 7).astype(int) )
Priority Color Risk score
1 1 Green 8 1
2 9 Red 10 3
3 5 Orange 4 0