Я хочу добавить двоичный столбец в свой фрейм данных в зависимости от того, содержат ли данные столбцы NaN или нет.
Я пытался сделать это с помощью приведенного ниже кода.
import pandas as pd
dat = pd.DataFrame({'A': [12,34,56,78, 23,None, None], 'B': [90,80,70,23,None, 78, None], 'C': [90,80,70,23,None, 78, None], 'D': [12,34,56,78, 23,None, None]})
dat['A1'] = dat['A'].isnull()
dat['B1'] = dat['B'].isnull()
dat['C1'] = dat['C'].isnull()
dat['ismissing'] = 1 if dat['A1'] == True and dat['B1'] == True and dat['C1'] == True else 0
dat
, но Я получил ValueError в позапрошлой строке.
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
Пример ввода:
A B C D
10 NaN 40 NaN
NaN NaN 80 90
20 45 NaN 89
NaN NaN NaN 46
Ожидаемый результат:
A B C D E
10 NaN 40 NaN 0
NaN NaN 80 90 0
20 45 NaN 89 0
NaN NaN NaN 46 1
Я хочу проверить NaN только для А, Б, C столбцы.