python实现z-score标准化和0-1标准化

目录


标准化处理

0-1标准化:

对输出结果范围有要求,数据较为稳定的,不存在极端的最大最小值

z-score标准化:

数据存在异常值和较多的噪音,可以间接通过中心化避免异常值和极端值的影响

1、用自带的函数来操作

实现z-score标准化

from sklearn.preprocessing import StandardScaler   #实现z-score标准化

X_test=df_sum.iloc[:,-3:]    #实例化对象
b_test=StandardScaler()      #训练数据,赋值给b_test
X_result=b_test.fit_transform(X_test) 


print(X_result)       #查看训练数据

实现0-1标准化

from sklearn.preprocessing import MinMaxScaler

X_test=df_sum.iloc[:,-3:]    #实例化对象
b_test=MinMaxScaler()      #训练数据,赋值给b_test
X_result=b_test.fit_transform(X_test)   

print(X_result)        #查看训练数据

2、自定义函数实现

实现z-score标准化

#定义标准化函数
import numpy as np
def z_score_normalize(data):    
    mean = np.mean(data, axis=0)    
    std_dev = np.std(data, axis=0)    
    normalized_data = (data - mean) / std_dev    
    return normalized_data
#调用
X=df_sum.iloc[:,-3:]
b=z_score_normalize(X)
print(b)

实现0-1标准化

#定义0-1标准化的代码
import numpy as np
def normalize(X):    
    """    对矩阵X进行0-1标准化    """    
    X_min = np.min(X, axis=0)    
    X_max = np.max(X, axis=0)    
    X_norm = (X - X_min) / (X_max - X_min)    
    return X_norm
#实现与调用
X=df_sum.iloc[:,-3:]
b=normalize(X)
print(b)

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
青葱年少的头像青葱年少普通用户
上一篇 2023年8月4日
下一篇 2023年8月4日

相关推荐