打印/警告列值和计数的空值

时间:2018-06-14 14:41:36

标签: python pandas dataframe

我有一个数据框,其中有几列具有空值。目前我正在做以下事情:

import warnings
if df.columns[df.isnull().any()].any(): 
     warnings.warn("Found Null Value on column: " + str(df[df.columns[df.isnull().any()]].isnull().sum()))

打印出以下内容

UserWarning: Found Null Value on column: qty    50
dtype: int64

我想要像

这样的东西
UserWarning: Found Null Value on column: qty    count: 50

1 个答案:

答案 0 :(得分:0)

使用Python 3.6+中提供的f字符串。也可以使用str.format。我们可以简单地测试pd.Series.any是否为非零。

,而不是检查nulls_sum
df = pd.DataFrame([[0, np.nan, 1], [np.nan, 2, 3]])

import warnings

for col in df.columns:
    nulls_sum = df[col].isnull().sum()
    if nulls_sum:
        warnings.warn(f"Found Null Value on column: {col}, count: {nulls_sum}")

UserWarning: Found Null Value on column: 0, count: 1
UserWarning: Found Null Value on column: 1, count: 1
相关问题