获取列名列表所有值在 Python 中都是 NaN

ahb*_*bon 2 python numpy dataframe pandas

我可以使用 Python 来获取列名的列表,其中所有值都是NaNs,返回cd作为下面数据帧的结果吗?谢谢。

df = pd.DataFrame({'a': [1,2,3],'b': [3,4,5], 'c':[np.nan, np.nan, np.nan],
                   'd':[np.nan, np.nan, np.nan]})

   a  b   c   d
0  1  3 NaN NaN
1  2  4 NaN NaN
2  3  5 NaN NaN
Run Code Online (Sandbox Code Playgroud)

jpp*_*jpp 6

使用布尔索引df.columns

res = df.columns[df.isnull().all(0)]

# Index(['c', 'd'], dtype='object')
Run Code Online (Sandbox Code Playgroud)

  • 你的答案的一个较短的衍生物:`df.columns[~df.any()]` (3认同)
  • @HaleemurAli,这也将包括全为零的列。 (3认同)