reference : http://www.cnblogs.com/chaosimple/p/4153158.html

关于缺失值(missing value)的处理

在sklearn的preprocessing包中包含了对数据集中缺失值的处理,主要是应用Imputer类进行处理。

首先需要说明的是,numpy的数组中可以使用np.nan/np.NaN(Not A Number)来代替缺失值,对于数组中是否存在nan可以使用np.isnan()来判定。

使用type(np.nan)或者type(np.NaN)可以发现改值其实属于float类型,代码如下:

因此,如果要进行处理的数据集中包含缺失值一般步骤如下:

1、使用字符串'nan'来代替数据集中的缺失值;

2、将该数据集转换为浮点型便可以得到包含np.nan的数据集;

3、使用sklearn.preprocessing.Imputer类来处理使用np.nan对缺失值进行编码过的数据集。

代码如下:

上述代码使用数组X去“训练”一个Imputer类,然后用该类的对象去处理数组Y中的缺失值,缺失值的处理方式是使用X中的均值(axis=0表示按列进行)代替Y中的缺失值。

当然也可以使用imp对象来对X数组本身进行处理。

通常,我们的数据都保存在文件中,也不一定都是Numpy数组生成的,因此缺失值可能不一定是使用nan来编码的,对于这种情况可以参考以下代码:

上述代码line模拟从文件中读取出来的一行数据,使用nan来代替原始数据中的缺失值编码,将其转换为浮点型,然后使用X中的均值填补Z中的缺失值。

python预处理缺失值_[Scikit-Learn] - 数据预处理 - 缺失值(Missing Value)处理相关推荐

  1. python预处理缺失值_数据预处理 第3篇:数据预处理(使用插补法处理缺失值)...

    插补法可以在一定程度上减少偏差,常用的插补法是热卡插补.拟合插补和多重插补.拟合插补,要求变量间存在强的相关性:多重插补(MCMC法),是在高缺失率下的首选插补方法,优点是考虑了缺失值的不确定性. 一 ...

  2. python数据预处理的代码_【Python基础系列】常见的数据预处理方法(附代码)

    ↑↑↑点击上方蓝字,回复资料,嘿嘿,10个G的惊喜 本文简单介绍python中一些常见的数据预处理,包括数据加载.缺失值处理.异常值处理.描述性变量转换为数值型.训练集测试集划分.数据规范化. 1. ...

  3. python填补缺失值数据驱动代码_python数据预处理之缺失值的各种填补方式

    对于数据挖掘的缺失值的处理,应该是在数据预处理阶段应该首先完成的事,缺失值的处理一般情况下有三种方式: (1)删掉缺失值数据 (2)不对其进行处理 (3)利用插补法对数据进行补充 第一种方式是极为不可 ...

  4. python填补缺失值数据驱动代码_python填补缺失值数据驱动代码_python数据预处理之缺失值的各种填补方式...

    对于数据挖掘的缺失值的处理,应该是在数据预处理阶段应该首先完成的事,缺失值的处理一般情况下有三种方式: (1)删掉缺失值数据 (2)不对其进行处理 (3)利用插补法对数据进行补充 第一种方式是极为不可 ...

  5. python必备基础代码-【Python基础系列】常见的数据预处理方法(附代码)

    本文简单介绍python中一些常见的数据预处理,包括数据加载.缺失值处理.异常值处理.描述性变量转换为数值型.训练集测试集划分.数据规范化. 1. 加载数据 1.1 数据读取 数据格式有很多,介绍常见 ...

  6. pandas用众数填充缺失值_sklearn中的数据预处理和特征工程

    小伙伴们大家好~o()ブ,我是菜菜,我的开发环境是Jupyter lab,所用的库和版本大家参考: Python 3.7.1(你的版本至少要3.4以上 Scikit-learn 0.20.0 (你的版 ...

  7. 深入浅出python机器学习_9.1.5_通过数据预处理提高模型的准确率_MinMaxScaler

    # 导入红酒数据集from sklearn.datasets import load_wine# 导入MLP神经网络from sklearn.neural_network import MLPClas ...

  8. Python应用实战-用pandas实现数据预处理

    数据预处理常用的处理步骤,包括找出异常值.处理缺失值.过滤不合适值.去掉重复行.分箱.分组.排名.category转数值等,下面使用 pandas 解决这些最常见的预处理任务. 找出异常值常用两种方法 ...

  9. 负数如何归一化处理_机器学习之数据预处理

    第一节:前言 数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已.由此可见,特征工程在机器学习中占有相当重要的地位. 特征工程:利用数据领域的相关知识来创建能够使机器学习算法达到最佳性能 ...

  10. 数据标准化处理方法_机器学习系列-数据预处理-数据标准化(归一化)-理论

    在做一个具体的机器学习项目中,拿到收集到的数据后,一般都是需要做数据预处理,而标准化(暂时不考虑标准化和归一化的主要区别)是数据预处理中一个比较重要的环节,那么为什么需要对数据进行标准化处理呢? 数据 ...

最新文章

  1. 代码迁移之旅(二)- 渐进式迁移方案
  2. MySQL(查看数据文件目录)
  3. centos安装virtualbox
  4. iPad Air 2完全评测:可怕的三核CPU、六核GPU
  5. Linux内核源代码分析——Linux内核的入口
  6. python连续写入文件操作_Python实现的读取文件内容并写入其他文件操作示例
  7. c语言中 cos函数图像,cos图像(cos函数的图像)
  8. 6本通往高级Android开发者必看的英文书籍,附下载地址
  9. 华为畅享20 pro升级鸿蒙,最全升级机型汇总,附带华为鸿蒙HarmonyOS升级步骤
  10. html弄出油画效果,使用HTML5 Canvas实现仿PS图像油画滤镜特效
  11. 工业交换机的功率和网络管理方法
  12. 学习乐器的好处(1)
  13. 手写签名转化为电子版
  14. JS结合PHP瀑布流,JavaScript_原生JS实现响应式瀑布流布局,原生JS实现的瀑布流布局,代 - phpStudy...
  15. caffe 提取LMDB时可能出现的错误
  16. 读书笔记---阶级逆袭——三代人的卵巢彩票
  17. STM32F103C8T6引脚功能图
  18. 任正非讲话稿 PDF整理版
  19. redhat操作系统升级红帽6升级到红帽7linux升级
  20. 我叫mt4服务器维护中,我叫MT4:7月11日凌晨维护公告

热门文章

  1. 用vhdl实现4位加减法计数器_频率计数器的使用方法介绍
  2. 折半查找一个有序数组中的一个元素,即二分法
  3. 第8章例题 6-4 输入年份和天数,输出对应的年、月、日
  4. 高性能服务器存储服务器,高性能存储服务器
  5. linux 自动安装mysql数据库_Linux安装MySql数据库
  6. Java黑皮书课后题第5章:*5.30(金融应用:复利值)假设你每月在储蓄账户上多存100美元,年利率为5%,那么每月利率是0.05 / 12 = 0.00417。编写程序提示用户输入数据显示定月钱数
  7. Java黑皮书课后题第3章:*3.34(几何:线段上的点)编程练习题3.32显示了如何测试一个点是否在一个无限长的直线上。修改3.32测试一个点是否在一个线段上。编写程序,输入三个点坐标,显示在否线段
  8. Nginx技术研究系列7-Azure环境中Nginx高可用性和部署架构设计
  9. Validation(2)
  10. day31 Pyhton 面向对象的基础 三大特性