最近学习了sklearn中数据的标准化其实出了fit_transform函数

概述

1. fit()

fit函数主要用来计算一组数据的特征值,例如平均值,方差,中位数等等固定属性。

2.transform

transform这个函数主要是就是进行标椎化,降维,归一化等操作

3.fit_transform

fit_transform这个函数主要就是将上述fit函数和transform函数结合起来一步操作,例如标椎化过程,首先计算方差和平均值,然后再进行标准化(比如标准化~N(0,1))。

注:

根据对之前部分trainData进行fit的整体指标,对剩余的数据(testData)使用同样的均值、方差、最大最小值等指标进行转换transform(testData),从而保证train、test处理方式相同。所以,一般都是这么用:

from sklearn.preprocessing import StandardScaler
std = StandardScaler()
std.fit_tranform(X_train)
std.tranform(X_test)
  • 必须先用fit_transform(trainData),之后再transform(testData)
  • 如果直接transform(testData),程序会报错
  • 如果fit_transfrom(trainData)后,使用fit_transform(testData)而不transform(testData),虽然也能归一化,但是两个结果不是在同一个“标准”下的,具有明显差异。(一定要避免这种情况)
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐