【发布时间】:2020-10-18 06:53:29
【问题描述】:
我有一个包含 NULL 值和空字符串的数据框。
如下(带repro的代码)
data = {'vals1': [None, '100','','200'],
'vals2': ['100', '100','',''],
'vals3': ['100', None,'100',None],
'vals4': ['', '','','']
}
df = pd.DataFrame (data, columns = ['vals1','vals2','vals3','vals4'])
输出:
vals1 vals2 vals3 vals4
0 None 100 100
1 100 100 None
2 100
3 200 None
您会看到有合法的 null 值(Python 将 'None' 视为 null)但也有空字符串,用空格表示,这也是数据集的合法特征。
我们可以使用df.isnull().sum()来计算空值
给出:
vals1 vals2 vals3 vals4
0 True False False False
1 False False True False
2 False False False False
3 False False True False
我可以使用df.isnull().sum() 对空值求和:
vals1 1
vals2 0
vals3 2
vals4 0
dtype: int64
但是,我也需要一种方法来计算空值,以便输出变为:
Nulls Empty
vals1 1 1
vals2 0 1
vals3 2 1
vals4 0 4
dtype: int64
我怎样才能达到我想要的输出?
【问题讨论】:
标签: python pandas string numpy jupyter-notebook