如何计算Pandas中NaN值的数量

如何计算Pandas中NaN值的数量

我们可能需要计算数据集中每个特征的NaN值的数量,这样我们就可以决定如何处理它。例如,如果缺失值的数量相当少,那么我们可以选择放弃这些观察值;或者可能有一列有很多条目是缺失的,那么我们可以决定是否根本不包括这个变量。

方法1:使用describe()

我们可以使用describe()方法,该方法返回一个包含数据集细节的表格。count属性直接给出了每一列中非NaN值的计数。因此,如果我们知道观察值的总数,我们就可以得到NaN值的计数。

import pandas as pd 
import numpy as np
    
# dictionary of lists 
dict = { 'A':[1, 4, 6, 9], 
        'B':[np.NaN, 5, 8, np.NaN], 
        'C':[7, 3, np.NaN, 2],
        'D':[1, np.NaN, np.NaN, np.NaN] } 
  
# creating dataframe from the
# dictionary 
data = pd.DataFrame(dict) 
    
data.describe()
Python

输出 :

如何计算Pandas中NaN值的数量?

方法2:使用sum()
isnull()函数返回一个包含True和False值的数据集。由于True被视为1,False被视为0,因此在isnull()系列上调用sum()方法会返回True值的数量,这实际上与NaN值的数量相对应。

在一列中计算NaN :

我们可以简单地找到所需列中的空值,然后得到总和。

import pandas as pd
import numpy as np
    
# dictionary of lists 
dict = { 'A':[1, 4, 6, 9], 
        'B':[np.NaN, 5, 8, np.NaN], 
        'C':[7, 3, np.NaN, 2],
        'D':[1, np.NaN, np.NaN, np.NaN] } 
    
# creating dataframe from the
# dictionary 
data = pd.DataFrame(dict) 
  
# total NaN values in column 'B'
print(data['B'].isnull().sum())
Python

输出 :

2
Python

连续计算NaN :

可以用loc或iloc选择该行。然后,我们像以前一样找到总和。

import pandas as pd 
import numpy as np
    
# dictionary of lists 
dict = { 'A':[1, 4, 6, 9],
        'B':[np.NaN, 5, 8, np.NaN], 
        'C':[7, 3, np.NaN, 2],
        'D':[1, np.NaN, np.NaN, np.NaN] }   
    
# creating dataframe from the 
# dictionary 
data = pd.DataFrame(dict) 
  
# total NaN values in row index 1
print(data.loc[1, :].isnull().sum())
Python

输出 :

1
Python

在整个数据框架中计算NaN :
要计算整个数据集中的NaN,我们只需要调用sum()函数两次–一次用于获取每一列的计数,另一次用于查找所有列的总和。

import pandas as pd 
import numpy as np
    
# dictionary of lists 
dict = {'A':[1, 4, 6, 9],
        'B':[np.NaN, 5, 8, np.NaN],
        'C':[7, 3, np.NaN, 2],
        'D':[1, np.NaN, np.NaN, np.NaN]} 
    
# creating dataframe from the
# dictionary 
data = pd.DataFrame(dict) 
  
# total count of NaN values
print(data.isnull().sum().sum())
Python

输出 :

6
Python

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程