在《Python机器学习及实践》中,发现对数据标准化操作有些疑问,代码如下:
X_train = vec.fit_transform(X_train)
X_test = vec.fit_transform(X_test)
为什么X_train标准化是用fit_transform(),而X_test标准化是用transform()呢?
- fit_transform()干了两件事:fit找到数据转换规则,并将数据标准化
- transform()可以直接把转换规则拿来用,所以并不需要fit_transform(),否则,两次标准化后的数据格式就不一样了