как я могу найти столбцы, которые имеют значение в каждой строке. Мой pd.DataFrame выглядит так:
A B C D
1 1 2 3 2
2 2 2 1
3 3 2 1
я хотел бы получить этот вывод
B D
1 2 2
2 2 1
3 3 1
как я могу определить правильные столбцы?
Спасибо, R
Использовать, если значения отсутствуют:
df1 = df.loc[:, df.notna().all()]
#oldier pandas versions
#df1 = df.loc[:, df.notnull().all()]
print (df1)
B D
1 2 2
2 2 1
3 3 1
Объяснение:
Сравните отсутствующие значения от notna
:
print (df.notna())
A B C D
1 True True True True
2 True True False True
3 False True True True
Проверьте, являются ли все значения в столбцах " True
" DataFrame.all
:
print (df.notna().all())
A False
B True
C False
D True
dtype: bool
Если никакие значения не являются пустыми строками, сравните DataFrame.ne
(!=)
:
df = df.loc[:, df.ne('').all()]
~
.