sklearn.preprocessing之StandardScaler 的transform()函数和fit_transform()函数
fit_transform函数
fit(x,y)传两个参数的是有监督学习的算法,fit(x)传一个参数的是无监督学习的算法,比如降维、特征提取、标准化。fit_transform是fit和transform的组合。fit_transform中包含两个过程:计算均值/标准差,数据转换,是数据处理的两个环节。每一个transform都需要先fit,把数据转为(μ, σ)分布。fit是为了程序的后续函数transform的调用而服务的,是个前提条件。
两者联系
fit_transform和transform的区别就是前者是先计算均值和标准差再转换,而直接transform则是用之前数据计算的参数进行转换。换句话说,如果最先前没有fit,即没有缓存(μ, σ),那么,是不可以直接执行transform。很明显,fit_transform与transform运行结果会一致,如果先前缓存一致,那么,transform函数是一定可以替换为fit_transform函数,反之,则不可以。