Python 如何获取数据帧列中NaN观测值的频率

Python 如何获取数据帧列中NaN观测值的频率,python,pandas,nan,Python,Pandas,Nan,我有一个包含83列和4000行的熊猫数据框。我打算将数据用于逻辑回归,因此希望将我的列缩小到丢失数据量最少的列 为此,我考虑根据NaN观测的频率对它们进行排序。我试过一些东西,比如 econ_balance["BG.GSR.NFSV.GD.ZS"].describe() econ_balance["BG.GSR.NFSV.GD.ZS"].value_counts econ_balance["BG.GSR.NFSV.GD.ZS"]["NaN"] econ_balance["BG.GSR.NFSV.

我有一个包含83列和4000行的熊猫数据框。我打算将数据用于逻辑回归,因此希望将我的列缩小到丢失数据量最少的列

为此,我考虑根据NaN观测的频率对它们进行排序。我试过一些东西,比如

econ_balance["BG.GSR.NFSV.GD.ZS"].describe()
econ_balance["BG.GSR.NFSV.GD.ZS"].value_counts
econ_balance["BG.GSR.NFSV.GD.ZS"]["NaN"]
econ_balance["BG.GSR.NFSV.GD.ZS"][NaN]
这些似乎都不管用。我总是在谷歌上搜索,看看这个问题以前是否有人回答过,但运气不好

提前谢谢你的帮助


Josh

如果您只想计算
NaN
值:

In [2]:

df = pd.DataFrame({'a':[0,1,np.NaN,np.NaN,np.NaN],'b':np.NaN, 'c':[np.NaN,1,2,3,np.NaN]})
df
Out[2]:
    a   b   c
0   0 NaN NaN
1   1 NaN   1
2 NaN NaN   2
3 NaN NaN   3
4 NaN NaN NaN
In [6]:

df.isnull().astype(int).sum()
Out[6]:
a    3
b    5
c    2
dtype: int64
编辑 @CTZhu指出,类型铸造是不必要的:

In [7]:

df.isnull().sum()
Out[7]:
a    3
b    5
c    2
dtype: int64

df.isnull().sum()天哪,我突然获得了立即复制的close votebeat,顺便说一句,我想你可以跳过
aType(int)
部分。谢谢你的帮助!