数据标准化

"""
本类用于实现数据标准化
标准化的目的是使得不同的特征的量级近似或相同
"""
import numpy as np


class DataStandardization:
    # 定义构造函数(构造方法),初始化参数
    def __init__(self, feature, data=None):
        self.feature = feature
        self.data = data


    # 定义Z-score标准化函数
    def Z_ScoreStandardization(self):
        # X_标准化后的数据 = (X - X的均值) / X的标准差
        # 得到均值
        mean = np.mean(self.feature, axis=0)  # axis=0的意思是对每一列的数据进行取平均值操作
        # axis=1就是对每一行操作
        # 得到标准差
        standard_deviation = np.std(self.feature, axis=0)
        # numpy数组会直接把对应列的数值减去对应列的均值,不需要for循环
        feature_standard = (self.feature-mean) / standard_deviation
        return feature_standard


    # 最大最小值标准化函数
    def Max_MinStandardization(self):
        # X' = (X - X_min) / (X_max - X_min)
        max_value = np.max(self.feature, axis=0)
        min_value = np.min(self.feature, axis=0)

        feature_standard = (self.feature-min_value) / (max_value-min_value)
        return feature_standard

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值