У меня есть df
с двумя столбцами, как показано ниже:
A B
0 100-00 nan
1 200-00 nan
2 other 300-00
3 100-00 text
4 other nan
Мне нужно создать столбец C, который будет применять logi c, как показано ниже:
- если B равно nan, то A
- , если B начинается с цифры c, тогда B
- , в противном случае A
У меня есть код, как показано ниже, который работает просто отлично, но я полагаю, что может быть лучший, более эффективный способ сделать это:
C = []
for r in range(df.shape[0]):
if df['B'].iloc[r] == 'nan':
C.append(df['A'].iloc[r])
elif df['B'].iloc[r][:3].isnumeric():
C.append(df['B'].iloc[r])
else:
C.append(df['A'].iloc[r])
df['C'] = C
df
A B C
0 100-00 nan 100-00
1 200-00 nan 200-00
2 other 300-00 300-00
3 100-00 text 100-00
4 other nan other
Заранее спасибо за вашу помощь.