sklearn 缺失值填补(总结)
首先查看数据形态:
data.shape
再查看数据类型和非空值的个数与比例
data.info()
使用SimpleImputer进行填补
from sklearn.impute import SimpleImputer as si
imp_mean=si()
默认是用均值进行填补,参数如下:
- missing_values: 空值的类型。默认np.nan
注意,numpy自带的fillna只能填补np.nan,而此处则可以指定空值的类型。比如
?或N/A
- strategy: 可选:mean, median, most_frequent, constant
- fill_value: 以什么值进行填补,当constant时可用。
- copy:是否创建副本
当数据是连续型,一般用均值填补。数据是分类型,用众数填补。
比如当空值是?时,使用0填充:
imp_0=si(missing_values="?",strategy='constant', fill_value=0)
imp_0=imp_0.fit_transform(data_)
注意此处,data是如果是0维,则要先变为一维:
data_=data.列名.values.reshape(-1.1)
除了用均值,0,众数,中位数。还可用:算法、多重差补等。但是如用随机森林进行填补,解释性比较差。
sklearn 缺失值填补(总结)的更多相关文章
- 机器学习实战基础(三十八):随机森林 (五)RandomForestRegressor 之 用随机森林回归填补缺失值
简介 我们从现实中收集的数据,几乎不可能是完美无缺的,往往都会有一些缺失值.面对缺失值,很多人选择的方式是直接将含有缺失值的样本删除,这是一种有效的方法,但是有时候填补缺失值会比直接丢弃样本效果更好, ...
- 基于sklearn的分类器实战
已迁移到我新博客,阅读体验更佳基于sklearn的分类器实战 完整代码实现见github:click me 一.实验说明 1.1 任务描述 1.2 数据说明 一共有十个数据集,数据集中的数据属性有全部 ...
- sklearn中的数据预处理和特征工程
小伙伴们大家好~o( ̄▽ ̄)ブ,沉寂了这么久我又出来啦,这次先不翻译优质的文章了,这次我们回到Python中的机器学习,看一下Sklearn中的数据预处理和特征工程,老规矩还是先强调一下我的开发环境是 ...
- 数据的特征预处理?(归一化)&(标准化)&(缺失值)
特征处理是什么: 通过特定的统计方法(数学方法)将数据转化成为算法要求的数据 sklearn特征处理API: sklearn.preprocessing 代码示例: 文末! 归一化: 公式: ...
- 6-Pandas之缺失值处理
一.了解缺失值 通常使用 NA('not available')来代指缺失值 在Pandas的数据结构中,缺失值使用 NaN('Not a Number')进行标识 除了汇总统计方法,还可以使用isn ...
- 如何做出一个更好的Machine Learning预测模型【转载】
作者:文兄链接:https://zhuanlan.zhihu.com/p/25013834来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 初衷 这篇文章主要从工程角度来 ...
- python数据分析所需要了解的操作。
import pandas as pd data_forest_fires = pd.read_csv("data/forestfires.csv", encoding='gbk' ...
- python库使用整理
1. 环境搭建 l Python安装包:www.python.org l Microsoft Visual C++ Compiler for Python l pip(get-pip.py):p ...
- 机器学习案例学习【每周一例】之 Titanic: Machine Learning from Disaster
下面一文章就总结几点关键: 1.要学会观察,尤其是输入数据的特征提取时,看各输入数据和输出的关系,用绘图看! 2.训练后,看测试数据和训练数据误差,确定是否过拟合还是欠拟合: 3.欠拟合的话,说明模 ...
随机推荐
- MacType
#前言 这几天实在是嫌弃Win10垃圾的字体渲染效果--发虚模糊,索性从网上找了个系统字体渲染软件即MacType给系统字体改头换面. #使用效果 这里贴出两个场景的效果对比(单击图片查看具体效果) ...
- python进阶—OpenCV之常用图像操作函数说明(转)
文章目录cv2.thresholdcv2.bitwise_andcv2.bitwise_orcv2.bitwise_notcv2.inRangecv2.resizecv2.adaptiveThresh ...
- ACM-AK吧!少年
题目描述:AK吧!少年 AK is an ACM competition finished all of the problems. AC This problem is one of the ste ...
- TD信息通(无课表)使用体验
首先,在注册账户的时候,TD信息通还是比较严谨的.用户名字符数.密码字符数.邮箱格式等都有要求,我认为,这对App的长远发展来说,是很重要的一个细节.而且,在登陆之前,会有一项关于是否自动登陆的选择, ...
- 8 ~ express ~ 基于数据库的验证
1,首先 在router/api.js 中引入数据库定义好的模型 /models/User.js var User = require('../models/User') //User返回的是一个构 ...
- PHP日期函数
在正式学习日期函数前大家得了解几个概念: 1.时区 2.世界时 3.unix时间戳 时区 这个概念,之前大家听说过很多.我们来啰嗦两句,我们现实生活中使用的实区,在电脑里面也是一样有规定的.1884年 ...
- hash表系列(转)
http://www.cnblogs.com/mumuxinfei/p/4441826.html 前言: 我以前在百度的mentor, 在面试时特喜欢考察哈希表. 那时的我满是疑惑和不解, 觉得这东西 ...
- iOS 多线程 GCD part3:API
https://www.jianshu.com/p/072111f5889d 2017.03.05 22:54* 字数 1667 阅读 88评论 0喜欢 1 0. 预备知识 GCD对时间的描述有些新奇 ...
- Cannot access android.support.v4.app.*
解决办法: 添加到受影响的 module build.gradle 中(比如app的gradle文件根代码下) configurations.all { resolutionStrategy.each ...
- Django项目同步到码云
本篇博客主要记录下将刚刚初始化后的Django项目部署到码云中,首先我们需要到码云中注册一个账号,下面会讲解下如何在码云中建立一个仓库,再将其克隆到本地.最后将本地的项目推送到码云的仓库中. 码云内初 ...