我正在使用基于另一列的“if,elif,else”创建新列。
我的语法只生成我的“if”语句中列出的值,但是对于其他列中的某些值,它应该返回“elif”和“else”。
我创建的变量是OHX02N,基于OHX02CTC,我得到3,这是我的第一个if语句中的命令,即使它应该返回3,1,1,3,1为前五个障碍。
思想?
def F (value):
if FINALSET.loc[value,'OHX02CTC'] == 'E' or 'P' or 'R':
FINALSET.loc[value, 'OHX02N'] = 3
elif FINALSET.loc[value,'OHXO2CTC'] == 'J' or 'T':
FINALSET.loc[value,'OHX02N'] = 2
elif FINALSET.loc[value,'OHX02CTC'] == 'K' or 'Z':
FINALSET.loc[value,'OHX02N'] = 1
else:
FINALSET.loc[value,'OHXO2N'] = 0
for value in range(len(FINALSET)):
F(value)