如何使用Python中的scikit-learn庫從特徵向量中消除均值?


資料預處理是指資料清洗、去除無效資料、噪聲,用相關值替換資料等等。

資料預處理基本上是指將從各種資源或單個資源收集的所有資料整理成通用格式或統一資料集(取決於資料型別)的任務。一個步驟的輸出成為下一步的輸入,依此類推。

為了獲得特定結果,可能需要從輸入資料中去除均值。讓我們瞭解如何使用scikit-learn庫來實現這一點。

示例

import numpy as np
from sklearn import preprocessing
input_data = np.array([
[34.78, 31.9, -65.5],
[-16.5, 2.45, -83.5],
[0.5, -87.98, 45.62],
[5.9, 2.38, -55.82]])
print("Mean value is : ", input_data.mean(axis=0))
print("Standard deviation value is : ", input_data.std(axis=0))
data_scaled = preprocessing.scale(input_data)
print("Mean value has been removed ", data_scaled.mean(axis=0))
print("Standard deviation has been removed ", data_scaled.std(axis=0))

輸出

Mean value is : [ 6.17 -12.8125 -39.8 ]
Standard deviation value is : [18.4708067 45.03642047 50.30754615]
Mean value has been removed [-2.60208521e-18 -8.32667268e-17 -1.11022302e-16]
Standard deviation has been removed [1. 1. 1.]

解釋

  • 匯入所需的包。

  • 使用Numpy庫生成輸入資料。

  • 計算均值和標準差。

  • 它們顯示在控制檯上。

  • 使用‘data_scaled’函式從資料中去除均值和標準差。

  • 去除均值和標準差後的資料顯示在控制檯上。

更新於:2020年12月11日

318 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告