from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)

我知道的是fit()方法计算特征的平均值和标准偏差,然后transform()方法使用它们将特征转换为新的zoom 特征.fit\u transform()只不过是调用fit();单行中的transform()方法.

但为什么我们只为训练数据调用fit(),而不为测试数据调用fit()??

推荐答案

fit计算平均值和stdev以用于以后的zoom ,请注意,这只是一个没有进行zoom 的计算.

transform使用之前计算的平均值和标准偏差来zoom 数据(从所有值中减go 平均值,然后除以标准偏差).

fit_transform同时完成这两项任务.因此,只需一行代码即可完成.

对于X_train个数据集,我们执行fit_transform,因为我们需要计算平均值和stdev,然后使用它来zoom X_train个数据集.对于X_test数据集,因为我们已经有了均值和stdev,所以我们只做转换部分.

Edit:X_test数据应该是unseenunknown(即,没有从中提取信息),所以我们只能从X_train中提取信息.我们之所以将导出的均值和标准差(X_train)也用于转换X_test,是为了对y_testy_pred进行相同的"苹果对苹果"比较.

顺便说一句,如果列车/试验数据正确分割,没有偏差,并且数据足够大,两个数据集将与总体平均值和stdev具有相同的近似值.

Python相关问答推荐

用ctype构建指针链

螺旋桨图上意外颠倒的次y轴

查找3D数组中沿一个轴的相同值序列的长度(与行程长度编码相关)

如何以实现以下所述的预期行为的方式添加两只Pandas pyramme

如何将 map 数组组合到pyspark中每列的单个 map 中

在后台运行的Python函数

GEKKO:已知延迟的延迟系统的参数估计

自定义新元未更新参数

机器人与Pyton Minecraft服务器状态不和

使文本输入中的文本与标签中的文本相同

如何根据条件在多指标框架上进行groupby

比较两个二元组列表,NP.isin

Python会扔掉未使用的表情吗?

在内部列表上滚动窗口

由于NEP 50,向uint 8添加-256的代码是否会在numpy 2中失败?

如何在虚拟Python环境中运行Python程序?

如何从在虚拟Python环境中运行的脚本中运行需要宿主Python环境的Shell脚本?

Odoo 16使用NTFS使字段只读

寻找Regex模式返回与我当前函数类似的结果

在Python中使用yaml渲染(多行字符串)