Я пытаюсь создать новый столбец в пандах, используя оператор if. У меня есть это df:
df = {'Col1': [7,6,-9],
'Col2': [0.5,0.5,0.5],
'Col3': [5,4,3]}
Если Col1
больше 0, то я хотел бы умножить Col2
на Col3
, чтобы создать новый столбец, Col4
. Если Col1
не больше 0, тогда я просто хотел бы вернуть 0 в качестве значения столбца.
Вот что я пытался:
df['Col4'] = if df['Col1'] > 0:
df['Col2'] * df['Col3']
else:
0
Я получаю сообщение об ошибке: «SyntaxError: неверный синтаксис»
Окончательный ответ должен выглядеть следующим образом:
df = {'Col1': [7,6,-9],
'Col2': [0.5,0.5,0.5],
'Col3': [5,4,3],
'Col4': [2.5,2,0]}
Обратите внимание, что, поскольку в Col1
"-9" не больше 0, Col4
должно давать 0.