千家信息网

Python缺失值如何处理

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,这篇文章主要介绍了Python缺失值如何处理的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python缺失值如何处理文章都会有所收获,下面我们一起来看看吧。先构建一个含有
千家信息网最后更新 2024年11月23日Python缺失值如何处理

这篇文章主要介绍了Python缺失值如何处理的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python缺失值如何处理文章都会有所收获,下面我们一起来看看吧。

先构建一个含有缺失值的DataFrame,如下:

import pandas as pdimport numpy as npdata = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c'])print(data)

看出来了吗?np.nan就是NAN值,空值的意思。

在numpy中有一个函数可以用来查看空值,不对,是两个,isnull()和isna()这两函数。

我们分别来试试它们的效果:

import pandas as pdimport numpy as npdata = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c'])data.isnull()data.isna()

可以看出,这两函数的作用就是判断数据是不是空值,如果是,就返回true,不是就是false。

通常,对空值的处理有两种方法,一种就是把空值删除,另外一种就是把它填上,我们先说第一种,删除空值,我们可以dropna()这一函数来把空值删除。要注意,它会把含有空值的整行都删掉。例如:

import pandas as pdimport numpy as npdata = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c'])data.dropna()

上面的例子用了drop函数后,啥都没啦!

我们可以设置当每行空值多余2个时再删除(低于2个保留),这时候要用到dropna()的参数thresh。

补充空值的话有挺多的方法,有用均值补充,中位数补充等,我们要用到fillna()这一函数。例如,我们用均值来填充上文中的data,

代码如下:

import pandas as pdimport numpy as npdata = pd.DataFrame([[1,np.nan,3],[np.nan,5,np.nan]],columns = ['a','b','c'])data.fillna(data.mean())

代码运行的结果如下,可以看到空值都被对应列的均值所填充。

关于"Python缺失值如何处理"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"Python缺失值如何处理"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

0