当一个或多个项目或整个单元没有提供信息时,可能会出现丢失数据。在现实生活中,丢失数据是一个很大的问题,往往找半天还找不回来。
在Pandas中,缺少的数据由两个值表示:
- None:None是Python单例对象,通常用于丢失Python代码中的数据。
- NaN(非数字的缩写),是所有使用标准ieee浮点表示的系统所认可的特殊浮点值。
pandas对于None和NaN本质上是可互换的,用于表示缺失或空值。
在Pandas DataFrame中有几个用于检测、删除和替换空值的有用函数:
- isnull()
- notnull()
- dropna()
- fillna()
- replace()
- interpolate()
使用isnull()和notnull()
使用函数isnull()和notnull()检查PandasDataFrame中缺少的值。
使用isnull()
为了检查PandasDataFrame中的空值,我们使用isnull()函数返回布尔值的数据,这些值是NaN值的真值。
代码1:
# importing pandas as pd import pandas as pd # importing numpy as np import numpy as np # dictionary of lists dict = {'First Score':[100, 90, np.nan, 95], 'Second Score': [30, 45, 56, np.nan], 'Third Score':[np.nan, 40, 80, 98]} # creating a dataframe from list df = pd.DataFrame(dict) # using isnull() function df.isnull()
产出:
代码2:
# importing pandas package import pandas as pd # making data frame from csv file data = pd.read_csv("employees.csv") # creating bool series True for NaN values bool_series = pd.isnull(data["Gender"]) # filtering data # displaying data only with Gender = NaN data[bool_series]
产出:
如输出映像所示,只有具有Gender = NULL都会显示。
使用notnull()
为了检查PandasDataframe中的空值,我们使用NOTNULL()函数来返回对于NaN值为false的布尔值的数据。
代码3:
# importing pandas as pd import pandas as pd # importing numpy as np import numpy as np # dictionary of lists dict = {'First Score':[100, 90, np.nan, 95], 'Second Score': [30, 45, 56, np.nan], 'Third Score':[np.nan, 40, 80, 98]} # creating a dataframe using dictionary df = pd.DataFrame(dict) # using notnull() function df.notnull()
产出:
</