У меня есть фрейм данных, который выглядит следующим образом:
col 1 | col2 | col3 | col4 | col5
'abc' | 1 | 20 | 10 | 15
'abc' | 2 | 25 | 5 | 30
'def' | 1 | 340 | 12 | 22
'def' | 2 | 185 | 16 | 120
...
Я хотел бы создать еще один столбец col6
, который основан на условии: если col2
== 1, то col3
* col5
, иначе 0;если col2
== 2, то col4
* col5
, иначе 0. Таким образом, результирующий df должен выглядеть следующим образом:
col 1 | col2 | col3 | col4 | col5 | col6
'abc' | 1 | 20 | 10 | 15 | 300
'abc' | 2 | 25 | 5 | 30 | 150
'def' | 1 | 340 | 12 | 22 | 7480
'def' | 2 | 185 | 16 | 120 | 1920
...
Причина, по которой он должен возвращать 0, если ни 1, ни 2 только вcase col2
не имеет 1 или 2.