preprocessing.scale函数介绍
- 手机
- 2025-08-22 12:21:01

目录 前言函数介绍示例应用场景注意事项 前言
preprocessing.scale 是 scikit-learn 库中的一个函数,用于在数据预处理中对特征进行标准化(标准差缩放)。标准化是指将数据调整到均值为零,方差为一的分布。这个过程有助于提升某些机器学习算法的性能,特别是那些依赖距离计算的算法,如支持向量机、k-means 聚类等。
函数介绍 sklearn.preprocessing.scale(X, axis=0, with_mean=True, with_std=True, copy=True)参数介绍 X:要进行标准化处理的数据数组或者矩阵。通常是一个二维数组,其中行代表样本,列代表特征。
axis:指定沿哪个轴进行数据标准化。默认值为 0,即对每一列(特征)进行标准化。设置为 1 可以对每一行(样本)进行标准化。
with_mean:布尔型参数,表示是否将数据中心化(减去均值)。默认值为 True。
with_std:布尔型参数,表示是否将数据缩放到单位方差。默认值为 True。
copy:布尔型参数,表示是否在执行操作时复制数据。默认值为 True。如果设置为 False,则会在原地进行修改。
返回值
X_scaled:一个数组,包含标准化处理后的数据。
示例 from sklearn import preprocessing import numpy as np # 原始数据 X = np.array([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]]) # 标准化处理 X_scaled = preprocessing.scale(X) print("标准化后的数据:\n", X_scaled) print("均值:", X_scaled.mean(axis=0)) # 输出接近 [0, 0] print("标准差:", X_scaled.std(axis=0)) # 输出接近 [1, 1]结果如下:
标准化后的数据: [[-1.22474487 -1.22474487] [ 0. 0. ] [ 1.22474487 1.22474487]] 均值: [0. 0.] 标准差: [1. 1.] 应用场景机器学习模型:如 SVM、逻辑回归、神经网络等需要标准化输入的算法。
特征可比性:当特征尺度差异较大时(如年龄 vs 收入),标准化可避免某些特征主导模型。
注意事项稀疏矩阵:若 with_mean=True,标准化会破坏稀疏性(转换为密集矩阵)。
标准差为 0:若某特征的标准差为 0(所有值相同),标准化后该列会变为 NaN,需提前处理。
替代方法:实际应用中更常用 StandardScaler 类(支持保存参数,适用于训练集和测试集的统一处理):
from sklearn.preprocessing import StandardScaler scaler = StandardScaler() X_train_scaled = scaler.fit_transform(X_train) X_test_scaled = scaler.transform(X_test)通过 preprocessing.scale 可以快速实现数据标准化,但在复杂流程中推荐使用 StandardScaler 类以保持一致性。
preprocessing.scale函数介绍由讯客互联手机栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“preprocessing.scale函数介绍”
上一篇
C/C++面试知识点总结
下一篇
el-dropdown选中效果