scikit_learn中fit()/transform()/fit_transform()区别和联系
函数功能解释
fit()
根据训练集数据学习得到数据集的特征,比如均值、中位数、标准差等等
transform()
将fit()学到数据集特征,应用到数据集,比如学习到数据集平均数为6,应用到填充数据中的缺失值
fit_transform() = fit()+transform()
即将从数据集中学到的特征(均值、中位数、标准差)应用到数据集中
举例
此处以使用均值填充缺失值举例
>>> import numpy as np
>>> from sklearn.impute import SimpleImputer# 学习方法(策略)
>>> imp_mean = SimpleImputer(missing_values=np.nan, strategy='median') # 学习方法(策略)从下面数据集中进行学习
[[ 7. 2. 3.][ 4. nan 6.][10. 5. 9.]]>>> imp_mean_fit = imp_mean.fit([[7, 2, 3], [4, np.nan, 6], [10, 5, 9]]) # 学习方法(策略)从实际数据中进行学习,学习到的第1/2/3列中位数 分别是7.0,3.5,6.0
>>> imp_mean_fit.statistics_ array([7. , 3.5, 6. ])# 将学习到的结果(第1/2/3列中位数 分别是7.0,3.5,6.0)应用到数据集X,原来的np.nan分别被中位数替换
>>> X = [[np.nan, 2, 3], [4, np.nan, 6], [10, np.nan, 9]]
>>> print(imp_mean_fit.transform(X))[[ 7. 2. 3. ][ 4. 3.5 6. ][10. 3.5 9. ]]
应用
fit()+transform() 以及 fit_transform()只能应用在训练集,一般不能对测试集进行使用,测试集合一般用transfrom(),即只能将训练集提取到特征应用到训练集及测试集。原因是如果fit_transfrom(trainData)后,使用fit_transform(testData)而不transform(testData),虽然也能归一化,但是两个结果不是在同一个“标准”下的,具有明显差异。
scikit_learn中fit()/transform()/fit_transform()区别和联系相关推荐
- 机器学习:fit,transform,fit_transform区别(附代码)
导论: 在机器学习中,我们需要对数据集的数据进行处理,进而使用sklearn库中的一些函数对数据进行数据特征提取,训练模型,其中fit,transform,fit_transform是进行数据的预处理 ...
- fit,transform,fit_transform详解
写在前面 fit和transform没有任何关系,仅仅是数据处理的两个不同环节,之所以出来fit_transform这个函数名,仅仅是为了写代码方便,会高效一点. sklearn里的封装好的各种算法使 ...
- sklearn中, fit,fit_transform,transform的区别与联系
文章乃转载 scikit-learn提供了一系列转换库,他们可以清洗,降维,提取特征等. 在数据转换中有三个很重要的方法,fit,fit_transform,transform ss=Standard ...
- preprocessing.StandardScaler中fit、fit_transform、transform的区别
1.fit 用于计算训练数据的均值和方差, 后面就会用均值和方差来转换训练数据 2.fit_transform 不仅计算训练数据的均值和方差,还会基于计算出来的均值和方差来转换训练数据,从而把数据转换 ...
- fit_transform,fit,transform区别和作用详解!!!!!!
写在前面 fit和transform没有任何关系,仅仅是数据处理的两个不同环节,之所以出来fit_transform这个函数名,仅仅是为了写代码方便,会高效一点. sklearn里的封装好的各种算法使 ...
- fit_transform和transform的区别
部分转载 https://blog.csdn.net/weixin_38278334/article/details/82971752 https://www.cnblogs.com/summer-n ...
- sklearn中各算法类的fit,fit_transform和transform函数
在使用PCA和NFC中有三个函数fit,fit_transform,transform区分不清各自的功能.通过测试,勉强了解各自的不同,在这里做一些笔记. 1.fit_transform是fit和tr ...
- Flutter中Flexible和Expanded区别
Flutter中Flexible和Expanded区别 在官网的介绍中感觉说的很模糊: Flexible:Flexible是一个控制Row.Column.Flex等子组件如何布局的组件,Flexibl ...
- mybatis与php,浅谈mybatis中的#和$的区别
浅谈mybatis中的#和$的区别 发布于 2016-07-30 11:14:47 | 236 次阅读 | 评论: 0 | 来源: 网友投递 MyBatis 基于Java的持久层框架MyBatis 本 ...
最新文章
- 【译】理解Javascript函数执行—调用栈、事件循环、任务等
- 简述移动端IM开发的那些坑:架构设计、通信协议和客户端
- 如何设计一款地震高岗一派溪山千古秀的反爬虫?
- c#实现客户端程序自动下载更新(单独程序)
- OpenShift — 核心概念
- PHP学习总结(14)——PHP入门篇之常用运算符
- Qt定时器的精度问题
- 软考 - 可靠性和可用性
- zookeeper 密码_Dubbo、ZooKeeper介绍
- Mac OS X上安装配置apache服务器
- [Ubuntu] 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
- 生物信息学 陈铭_后基因组时代生物信息学_陈铭.pdf
- tensorflow输出
- .NET下多线程初探
- Atitit img hot click link 图像背景拉伸100%Map area trouble..So body backgrd img mode...is easy...No
- excel做地图热力图_如何用excel制作中国地图热力数据图
- 易语言斗鱼弹幕助手源码
- 基于jsp+mysql+Spring+SpringMVC+mybatis的大学生缴费系统
- 设计一个高精度的ADC采样电路思路
- android WIFI连接,解决6.0及以上无法连接问题
热门文章
- python怎么设置颜色深浅变化_python之深浅拷贝
- PL/SQL Developer 中文乱码解决
- 面试题解(2):loop相关
- [Animations] 快速上手 iOS10 属性动画
- Koa / Co / Bluebird or Q / Generators / Promises / Thunks 的相互关系
- 解决VS2010子目录中的.cpp文件引用上一级目录的stdafx.h找不到定义的问题
- double free or corruption的原因
- 一个学习的好去处!!
- 发送Gmail邀请.
- [maven]maven插件 tomcat7-maven-plugin 的使用