python数据预处理之缺失值简单处理:https://blog.csdn.net/Amy_mm/article/details/79799629

该博客总结比较详细,感谢博主。

我们在进行模型训练时,不可避免的会遇到某些特征出现空值的情况,下面整理了几种填充空值的方法

1. 用固定值填充

对于特征值缺失的一种常见的方法就是可以用固定值来填充,例如0,9999, -9999, 例如下面对灰度分这个特征缺失值全部填充为-99

data['灰度分'] = data['灰度分'].fillna('-99')

2. 用均值填充

对于数值型的特征,其缺失值也可以用未缺失数据的均值填充,下面对灰度分这个特征缺失值进行均值填充

data['灰度分'] = data['灰度分'].fillna(data['灰度分'].mean()))

3. 用众数填充

与均值类似,可以用未缺失数据的众数来填充缺失值

data['灰度分'] = data['灰度分'].fillna(data['灰度分'].mode()))

4. 用上下数据进行填充

用前一个数据进行填充

data['灰度分'] = data['灰度分'].fillna(method='pad')

用后一个数据进行填充

data['灰度分'] = data['灰度分'].fillna(method='bfill')

5. 用插值法填充

data['灰度分'] = data['灰度分'].interpolate()

6. 用KNN进行填充

from fancyimpute import BiScaler, KNN, NuclearNormMinimization, SoftImpute
dataset = KNN(k=3).complete(dataset)

python 特征缺失值填充的更多相关文章

  1. scikit-learn一般实例之六:构建评估器之前进行缺失值填充

    本例将会展示对确实值进行填充能比简单的对样例中缺失值进行简单的丢弃能获得更好的结果.填充不一定能提升预测精度,所以请通过交叉验证进行检验.有时删除有缺失值的记录或使用标记符号会更有效. 缺失值可以被替 ...

  2. spss缺失值填充步骤

    缺失值填充是数据预处理最基本的步骤,一般能想到的是固定值填充(均值等统计学方法).根据与本列有相关关系的列函数表示来填充.这次我用的是em算法进行填充,具体原理后续补充. 主要记录一下步骤: 工具栏: ...

  3. 2、Python特征

    Python特征 Python编程语言中的定位 脚本语言 高阶动态编程语言 简单易学 Python是一种代表简单主义思想的语言.Python的这种伪代码本质是它最大的优点之一.它使你能够专注于解决问题 ...

  4. 机器学习之路:python 特征降维 特征筛选 feature_selection

    特征提取: 特征降维的手段 抛弃对结果没有联系的特征 抛弃对结果联系较少的特征 以这种方式,降低维度 数据集的特征过多,有些对结果没有任何关系,这个时候,将没有关系的特征删除,反而能获得更好的预测结果 ...

  5. 机器学习之路:python 特征降维 主成分分析 PCA

    主成分分析: 降低特征维度的方法. 不会抛弃某一列特征, 而是利用线性代数的计算,将某一维度特征投影到其他维度上去, 尽量小的损失被投影的维度特征 api使用: estimator = PCA(n_c ...

  6. python 处理缺失值

  7. python就业班-淘宝-目录.txt

    卷 TOSHIBA EXT 的文件夹 PATH 列表卷序列号为 AE86-8E8DF:.│ python就业班-淘宝-目录.txt│ ├─01 网络编程│ ├─01-基本概念│ │ 01-网络通信概述 ...

  8. python对数组缺失值进行填充

    1. 两个常用的函数 1.1 np.nonzero() np.nonzero()函数返回数组中不为False(0)的元素对应的索引 a = np.array([1,2,0,3,1,0]) print( ...

  9. Python机器学习笔记 使用sklearn做特征工程和数据挖掘

    特征处理是特征工程的核心部分,特征工程是数据分析中最耗时间和精力的一部分工作,它不像算法和模型那样式确定的步骤,更多的是工程上的经验和权衡,因此没有统一的方法,但是sklearn提供了较为完整的特征处 ...

随机推荐

  1. sql 空值设置默认值

    ifnull(a.discountsign, ') AS "discountsign"

  2. Codeforces Beta Round #3 C. Tic-tac-toe 模拟题

    C. Tic-tac-toe 题目连接: http://www.codeforces.com/contest/3/problem/C Description Certainly, everyone i ...

  3. <摘录>算法策略的总结

    策略是面向问题的,算法是面向实现的. 一.不同算法策略特点小结 1.贪心策略 贪心策略一方面是求解过程比较简单的算法,另一方面它又是对能适用问题的条件要求最严格(即适用范围很小)的算法. 贪心策略解决 ...

  4. mysql错误10060

    setenforce 0 service iptables stop mysql -u root -p Aaa111222333 GRANT ALL PRIVILEGES ON *.* TO 'roo ...

  5. Composer安装和laravel下载

    1 下载Composer http://www.phpcomposer.com/ php我先选的是5.5.38的, 但是 laravel5.1 PHP版本 >= 5.5.9 laravel5.2 ...

  6. mysql备份mysqldump

    mysqldump常用于MySQL数据库逻辑备份. 1.各种用法说明 A. 最简单的用法: mysqldump -uroot -pPassword [database name] > [dump ...

  7. 利用pca分析fmri的生理噪声

    A kernel machine-based fMRI physiological noise removal method 关于,fmri研究中,生理噪声去除的价值:一.现在随着技术的提升,高场fm ...

  8. python灰帽子学习感想

    Gray Hat Python Python Programming for hackers and reverse engineers Python灰帽子:黑客与逆向project师的Python编 ...

  9. C#秘密武器之多线程——参数与返回值

    线程函数要么没有参数,要么只能有一个object参数,而且均没有返回值,这样就大大降低了程序的灵活性,其实我们想要的是能像普通方法一样正常使用参数和返回值!能不能实现这个需求呢?下面就介绍两种方法 一 ...

  10. 饿了么ui添加事件

    最近饿了么ui挺火,连美团都有项目组再用,刚好最近项目重构,就引入了进来,刚用上就发现一个大坑,在配合vue使用时,居然无法添加自定义事件 找了半天才发现原因是需要在事件后面加上  ‘’.native ...