python缺失值填充方法示例代码

 更新时间:2022年12月23日 16:03:37   作者:开始学习的同学  
常见的数据缺失填充方式分为很多种,比如删除法、均值法、回归法、KNN、MICE、EM等,下面这篇文章主要给大家介绍了关于python缺失值填充方法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

1.找到缺失值

导入数据集

df=pd.read_csv("nba.csv")
df.head(10)

替换异常值(数据集中异常值为“-”)

把数据集中的异常值用“NaN”替换

# 将空值形式的缺失值转换成可识别的类型
data = data.replace('-', np.NaN)

2.计算缺失值的数量

用# isnull() 函数,确认各列是否有缺失值1.

null_all = df.isnull().sum()
print(null_all)

1

.sum();表示可以显示各个列的缺失值数量。

null_all = df.isnull.any(axis=1)#表示那些行具有缺失值,

.any()表示只要按行或列计算,有缺失值就算入
.all()表示所在行或列全为缺失值才计入
.sum()表示计算列缺失值时,一列有多个缺失值,同理,计算行缺失,计算有多少个行

3.处理缺失值

3.1:df.dropna():直接删除行列

df表示数据集的名称

  • dropna(axis=0, how=‘any’, thresh=None, subset=None, inplace=False)

括号内上述参数都是函数默认。

axis=0:表示对行进行删除操作,axis=1:对列删除进行操作
how=‘any’:表示维度 存在“缺失值”就删除相应行/列操作;how=‘all’:进行相关行或列删除操作时,只有所有维度缺失才删除
thresh=None:等于几表示有几个缺失值存在才会删除所在的行或列。
inplace=False:表示对原来的数据集不进行操作,True时表示对原来的数据集也进行操作。

3.2:df.fillna()填充缺失值

  • fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)

axis : {0 or ‘index’, 1 or ‘columns’}

method : {‘backfill’, ‘bfill’, ‘pad’, ‘ffill’, None}
pad’, ‘ffill:将前面的值填充于后面位置。
backfill’, 'bfill:表示将后面的值填充于前面位置。

data.fillna(data.mean())#平均值填充
data.fillna(data.median())#中位数填充

3.3:KNN填充

from sklearn.impute import KNNImputer
imputer = KNNImputer(n_neighbors=4)#邻居样本求平均数
df1=imputer.fit_transform(df)

4.查看数据集的末尾

df.tail(10)

查看末尾10行

总结

到此这篇关于python缺失值填充方法的文章就介绍到这了,更多相关python缺失值填充方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Pythonic版二分查找实现过程原理解析

    Pythonic版二分查找实现过程原理解析

    这篇文章主要介绍了Pythonic版二分查找实现过程原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 快速进修Python指南之自定义模块常用模块

    快速进修Python指南之自定义模块常用模块

    这篇文章主要为大家介绍了Java开发者如何快速进修Python指南之自定义模块常用模块示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • TensorFlow实现创建分类器

    TensorFlow实现创建分类器

    这篇文章主要为大家详细介绍了TensorFlow实现创建分类器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • 基于np.arange与np.linspace细微区别(数据溢出问题)

    基于np.arange与np.linspace细微区别(数据溢出问题)

    这篇文章主要介绍了基于np.arange与np.linspace细微区别(数据溢出问题),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Python爬虫数据处理模块的安装使用教程

    Python爬虫数据处理模块的安装使用教程

    这篇文章主要为大家介绍了Python爬虫数据处理模块的安装使用教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 关于python 的legend图例,参数使用说明

    关于python 的legend图例,参数使用说明

    这篇文章主要介绍了关于python 的legend图例,参数使用说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • 基于python框架Scrapy爬取自己的博客内容过程详解

    基于python框架Scrapy爬取自己的博客内容过程详解

    这篇文章主要介绍了基于python框架Scrapy爬取自己的博客内容过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Pycharm和Idea支持的vim插件的方法

    Pycharm和Idea支持的vim插件的方法

    这篇文章主要介绍了Pycharm和Idea支持的vim插件的相关知识,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Python正则表达式的另类解答

    Python正则表达式的另类解答

    这篇文章主要为大家详细介绍了Python正则表达式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • Python3数据库操作包pymysql的操作方法

    Python3数据库操作包pymysql的操作方法

    这篇文章主要介绍了Python3数据库操作包pymysql的操作方法,文章通过实例代码相结合给大家介绍的非常详细,需要的朋友可以参考下
    2018-07-07

最新评论