python缺失值的解决方法总结


Posted in Python onJune 09, 2021

1、解决方法

(1)忽视元组。

缺少类别标签时,通常这样做(假设挖掘任务与分类有关),除非元组有多个属性缺失值,否则该方法不太有效。当个属性缺值的百分比变化很大时,其性能特别差。

(2)人工填写缺失值。

一般来说,这种方法需要很长时间,当数据集大且缺少很多值时,这种方法可能无法实现。

(3)使用全局常量填充缺失值。

将缺失的属性值用同一常数(如Unknown或负无限)替换。如果缺失值都是用unknown替换的话,挖掘程序可能会认为形成有趣的概念。因为有同样的价值unknown。因此,这种方法很简单,但不可靠。

(4)使用与给定元组相同类型的所有样本的属性平均值。

(5)使用最可能的值填充缺失值。

可以通过回归、使用贝叶斯形式化的基于推理的工具和决策树的总结来决定。

2、实例

import numpy as np
 
from sklearn.preprocessing import Imputer
 
imp = Imputer(missing_values='NaN', strategy='mean', axis=0)
 
import numpy as np
from sklearn.preprocessing import Imputer
 
###1.使用均值填充缺失值
imp = Imputer(missing_values='NaN', strategy='mean', axis=0)
imp.fit([[1, 2], [np.nan, 3], [7, 6]])
 
X = [[np.nan, 2], [6, np.nan], [7, 6]]
print(imp.transform(X))  
[[4.         2.        ]
 [6.         3.66666667]
 [7.         6.        ]]

知识点扩充:

缺失值的处理方法

由于各种各样的原因,真实世界中的许多数据集都包含缺失数据,这些数据经常被编码成空格、nans或者是其他的占位符。但是这样的数据集并不能被scikit - learn算法兼容,因为大多数的学习算法都会默认数组中的元素都是数值,因此素偶有的元素都有自己的代表意义。

使用不完整的数据集的一个基本策略就是舍弃掉整行或者整列包含缺失值的数值,但是这样处理会浪费大量有价值的数据。下面是处理缺失值的常用方法:

1.忽略元组

当缺少类别标签时通常这样做(假定挖掘任务涉及分类时),除非元组有多个属性缺失值,否则该方法不是很有效。当每个属性缺少值的百分比变化很大时,它的性能特别差。

2.人工填写缺失值

一般该方法很费时,并且当数据集很大,缺少很多值时,该方法可能行不通。

3.使用一个全局常量填充缺失值

将缺失的属性值用同一个常数(如“Unknown”或 负无穷)替换。如果缺失值都用“unknown”替换,则挖掘程序可能会认为它们形成一个有趣的概念,因为它们都具有相同的值“unknown”。因此,虽然该方法很简单,但是它十分不可靠。

4.使用与给定元组属同一类的所有样本的属性均值

例如:将顾客按照credit_risk分类,则使用具有相同信用度的给定元组的顾客的平均收入替换income中的缺失值。

Python客栈送红包、纸质书

5.使用最可能的值填充缺失值

可以用回归、使用贝叶斯形式化的基于推理的工具或决策树归纳确定。例如,利用数据集中其他顾客的属性,可以构造一颗决策树来预测income的缺失值。

到此这篇关于python缺失值的解决方法总结的文章就介绍到这了,更多相关如何解决python缺失值内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python sqlobject(mysql)中文乱码解决方法
Nov 14 Python
python使用socket远程连接错误处理方法
Apr 29 Python
tensorflow获取变量维度信息
Mar 10 Python
Selenium鼠标与键盘事件常用操作方法示例
Aug 13 Python
python实现给微信指定好友定时发送消息
Apr 29 Python
python 利用turtle库绘制笑脸和哭脸的例子
Nov 23 Python
numpy:找到指定元素的索引示例
Nov 26 Python
Python:合并两个numpy矩阵的实现
Dec 02 Python
Python Scrapy框架:通用爬虫之CrawlSpider用法简单示例
Apr 11 Python
使用Python实现微信拍一拍功能的思路代码
Jul 09 Python
Python实现给PDF添加水印的方法
Jan 25 Python
PyTorch dropout设置训练和测试模式的实现
May 27 Python
Python提取PDF指定内容并生成新文件
Python激活Anaconda环境变量的详细步骤
Jun 08 #Python
Python序列化与反序列化相关知识总结
Jun 08 #Python
浅谈怎么给Python添加类型标注
Python如何导出导入所有依赖包详解
Jun 08 #Python
OpenCV-Python实现油画效果的实例
OpenCV-Python实现图像平滑处理操作
You might like
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
JS 日期验证正则附asp日期格式化函数
2009/09/11 Javascript
Asp.Net alert弹出提示信息的几种方法总结
2014/01/29 Javascript
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
node.js中的fs.read方法使用说明
2014/12/17 Javascript
原生js实现日期联动
2015/01/12 Javascript
纯JS焦点图特效实例(可一个页面多用)
2016/12/07 Javascript
js继承实现方法详解
2016/12/16 Javascript
详解Vue中一种简易路由传参办法
2017/09/15 Javascript
ES6学习教程之块级作用域详解
2017/10/09 Javascript
基于匀速运动的实例讲解(侧边栏,淡入淡出)
2017/10/17 Javascript
图文介绍Vue父组件向子组件传值
2018/02/17 Javascript
Vue引入sass并配置全局变量的方法
2018/06/27 Javascript
详解vue2.0监听属性的使用心得及搭配计算属性的使用
2018/07/18 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
2018/09/30 Javascript
解决vue跨域axios异步通信问题
2019/04/17 Javascript
微信小程序获取用户绑定手机号方法示例
2019/07/21 Javascript
javascript中正则表达式语法详解
2020/08/07 Javascript
Webpack3+React16代码分割的实现
2021/03/03 Javascript
python 反向输出字符串的方法
2018/07/16 Python
Python中的取模运算方法
2018/11/10 Python
Python中查看变量的类型内存地址所占字节的大小
2019/06/26 Python
python快速编写单行注释多行注释的方法
2019/07/31 Python
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
台湾前三大B2C购物网站:MOMO购物网
2017/04/27 全球购物
请说出以下代码输出什么
2013/08/30 面试题
安全生产标语
2014/06/06 职场文书
2014年班干部工作总结
2014/11/25 职场文书
商超业务员岗位职责
2015/02/13 职场文书
中学教师师德师风承诺书
2015/04/28 职场文书
2016年公司新年寄语
2015/08/17 职场文书
市级三好生竞选稿
2015/11/21 职场文书
公司中层管理培训心得体会
2016/01/11 职场文书
党性教育心得体会(共6篇)
2016/01/21 职场文书
Python内置包对JSON文件数据进行编码和解码
2022/04/12 Python
JS前端监控采集用户行为的N种姿势
2022/07/23 Javascript