数据预处理-标准化

标准化

通常确定目标变量的特征会有多个,原始数据中不同特征的数值大小往往差异很大,数值大的特征对目标变量的影响程度将会比数值小的特征对目标变量的影响大,数值小的特征容易被忽略。而通过标准化处理,可以使得不同的特征变量具有相同的尺度(不同特征的值都在某个范围内),消除了特征之间数值量纲的差异性。

数据分析及建模过程中,许多机器学习算法也需要其输入特征为标准化形式。
例如,SVM算法中的RBF核函数,线性模型中的𝑙1、𝑙2正则项,目标函数往往假设其特征均值在0附近且方差齐次;若样本的特征之间的量纲差异太大,样本之间相似度评估结果将存在偏差。

常见数据标准化方法:
Z-Score标准化
Min-Max标准化
RobustScaler标准化

1、Z-Score标准化

对特征取值中的每一个数据点作减去均值并除以标准差的操作,使得处理后的数据具有固定均值和标准差,处理函数为:
𝑓_𝑖′=(𝑓_𝑖−𝜇)/𝜎
其中,𝑓_𝑖′为标准化后各数据点的取值, 𝑓_𝑖为原始各数据点取值,𝜇为该特征取值的平均值,𝜎为该特征取值的标准差。
适用于特征的最大值或最小值未知、样本分布非常离散的情况。
实现:
sklearn.preprocessing.StandardScaler
preprocessing.StandardScaler(
copy=True, #如果为False,尝试避免复制并改为直接替换
with_mean=False, #如果为True,则在缩放之前将数据居中
with_std=False #如果为True,则将数据缩放为单位方差(或单位标准差)
)

2、Min-Max标准化

Min-Max标准化(离差标准化或最大-最小值标准化)通过对特征作线性变换,使得转换后特征的取值分布在 [0,1] 区间内。
𝑓_𝑖*=(𝑓_𝑖−𝑓_𝑚𝑖𝑛)/(𝑓_𝑚𝑎𝑥−𝑓_𝑚𝑖𝑛 )
将特征𝑓映射到 [a,b] 区间内:
𝑓_𝑖*=(b−a)/(𝑓_𝑚𝑎𝑥−𝑓_𝑚𝑖𝑛 ) (𝑓_𝑖−𝑓_𝑚𝑖𝑛 )+a
𝑓_𝑚𝑖𝑛为特征的最小值,𝑓_𝑚𝑎𝑥为特征的最大值
若数据存在离群值,标准化后的效果较差。
实现:
sklearn.preprocessing.MinMaxScaler
preprocessing.MinMaxScaler(
feature_range=(0, 1), #期望的转换数据范围
copy=True #设置为False以执行就地标准化并避免复制
)

3、考虑离群值的标准化

sklearn.preprocessing.RobustScaler
preprocessing.RobustScaler(
with_centering=False, #如果为True,则在标准化之前将数据居中
with_scaling=False, #如果为True,则将数据缩放到分位数范围
quantile_range=(25.0, 75.0), #用于计算scale_的分位数范围
copy=True #如果为False,请尝试避免复制并改为直接替换
)
标准化公式:
在这里插入图片描述
其中:
median为中位数,分母部分由quantile_range确定。缺省为IQR:3/4分位数-1/4分位数。

4、其他数据变换方法
atan反正切函数转换

当数据都大于零时可以,可以使用反正切函数标准化,atan函数会原始数据映射到[-1,0]区间上。

log函数转换
5、sklearn中标准化对象方法

fit(X[, y]) #计算。
fit_transform(X[, y]) #计算并执行标准化。
inverse_transform(X[, copy]) #将已标准化的数据转换为原始表示。
partial_fit(X[, y]) #inline计算X上的mean和std。
transform(X[, y, copy]) #执行标准化。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
数据预处理是数据分析非常重要的一个环节,它可以让原始数据更加适合用于各种分析和建模任务。常见的数据预处理包括数据清洗、缺失值处理、异常值处理、特征选择、特征缩放和特征变换等。下面我们将介绍一些常见的数据预处理方法。 1. 数据清洗 数据清洗是指在数据去除不合理、重复或者无效的数据,保证数据的完整性和准确性。常见的数据清洗方法包括: - 删除重复数据 - 去除异常值 - 去除不合理数据 - 填充缺失值 2. 缺失值处理 缺失值是指数据集某些数据缺失的情况。常见的缺失值处理方法包括: - 删除缺失值 - 插值法填补缺失值 - 使用平均值、位数、众数等统计量填补缺失值 3. 异常值处理 异常值是指数据集不符合正常规律的数据。常见的异常值处理方法包括: - 删除异常值 - 修改异常值 - 使用插值法填补异常值 4. 特征选择 特征选择是指从原始数据选择最具有代表性的特征,以便用于分析和建模。常见的特征选择方法包括: - 过滤式特征选择 - 包裹式特征选择 - 嵌入式特征选择 5. 特征缩放 特征缩放是指将不同量纲的特征缩放到相同的范围内。常见的特征缩放方法包括: - 标准化 - 归一化 - 对数变换 6. 特征变换 特征变换是指通过对原始数据进行某些变换,使得数据更适合用于分析和建模。常见的特征变换方法包括: - 主成分分析(PCA) - 线性判别分析(LDA) - 因子分析 以上就是一些常见的数据预处理方法,通过对数据进行适当的预处理,可以提高数据分析和建模的准确性和效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ITLiu_JH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值