我有一个如下的数据框.
import pandas as pd
import numpy as np
raw_data = {'student':['A','B','C','D','E'],
'score': [100, 96, 80, 105,156],
'height': [7, 4,9,5,3],
'trigger1' : [84,95,15,78,16],
'trigger2' : [99,110,30,93,31],
'trigger3' : [114,125,45,108,46]}
df2 = pd.DataFrame(raw_data, columns = ['student','score', 'height','trigger1','trigger2','trigger3'])
print(df2)
Run Code Online (Sandbox Code Playgroud)
我需要根据多个条件派生Flag列.
我需要将得分和高度列与触发器1-3列进行比较.
标志栏:
如果得分大于等于触发1且高度小于8则红色 -
如果分数大于等于触发2且高度小于8则黄色 -
如果得分大于等于触发3且高度小于8则橙色 -
如果高度大于8,则将其留空
如何在pandas数据框中编写if else条件并派生列?
预期产出
student score height trigger1 trigger2 trigger3 Flag
0 A 100 7 84 99 114 Yellow
1 B 96 4 95 110 125 Red
2 C 80 9 15 30 45 …
Run Code Online (Sandbox Code Playgroud)