当前位置: 代码迷 >> 综合 >> 机器学习之数据预处理——StandardScaler
  详细解决方案

机器学习之数据预处理——StandardScaler

热度:25   发布时间:2023-11-24 08:01:55.0

文章目录

  • 前言
  • 一、手工生成数据
  • 二、使用步骤
    • 1.引入库
    • 2.对数据进行预处理
    • 3.结果分析:


前言

数据预处理是机器学习中常用的处理数据的方法,这样能够让模型的训练速度得到质的提升,本文将为大家展现常用的几种数据预处理方法。

一、手工生成数据

import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
X,y=make_blobs(n_samples=40,centers=2,random_state=50,cluster_std=2)
plt.scatter(X[:,0],X[:,1],c=y,cmap=plt.cm.cool)
plt.show()

请添加图片描述
生成的数据集如上

二、使用步骤

1.引入库

from sklearn.preprocessing import StandardScaler

2.对数据进行预处理

from sklearn.preprocessing import StandardScaler
X_1=StandardScaler().fit_transform(X)
plt.scatter(X_1[:,0],X_1[:,1],c=y,cmap=plt.cm.cool)
plt.show()

请添加图片描述

3.结果分析:

对比两个图,你也许会发现数据点的分布情况没有什么不同,但图像的x轴和y轴都发生了变化。现在数据所有的特征1的数值都在-2到3之间,而特征2的数值都在-3到2之间。这是因为,StandardScaler的原理是,将所有数据的特征值转换为均值为0,而方差为1的状态,这样就可以确保数据的‘大小’都是一致的,这样更利于模型的训练。