У меня есть DataFrame
, как показано ниже:
df
A B C D E
0 test NaN 10.0 a a
1 test NaN 10.0 a a
2 test x NaN a NaN
3 test NaN 12.0 NaN NaN
4 test x NaN NaN NaN
5 test NaN 14.0 g c
Я хочу создать столбец key
, который:
- - это строка длины ==
len(df.columns)
- каждый
0
представляет NaN
, а каждый 1
представляет не NaN
A B C D E key
0 test NaN 10.0 a a 10111
1 test NaN 10.0 a a 10111
2 test x NaN a NaN 11010
3 test NaN 12.0 NaN NaN 10100
4 test x NaN NaN NaN 11000
5 test NaN 14.0 g c 10111
Я знаю, как это проверить, но не знаю, как чтобы получить его в 1 строку в 1 столбце. Мой текущий код:
for col in df.columns:
... print(df[col].isnull().astype(int).replace({1: 0, 0: 1}))
...
0 1
1 1
2 1
3 1
4 1
5 1
Name: A, dtype: int64
0 0
1 0
2 1
3 0
4 1
5 0
Name: B, dtype: int64
0 1
1 1
2 0
3 1
4 0
5 1
Name: C, dtype: int64
0 1
1 1
2 1
3 0
4 0
5 1
Name: D, dtype: int64
0 1
1 1
2 0
3 0
4 0
5 1
Name: E, dtype: int64
0 1
1 1
2 1
3 1
4 1
5 1
Name: key, dtype: int64