# 均值移除:對每列特徵進行變換,變換後均值為0
# 標準差為1(資料分布更加規範)
# 樣本資料
import numpy as np
import sklearn.preprocessing as sp
raw_sample = np.array([[
3.0,
-1.0
,2.0],
[0.0
,4.0
,3.0],
[1.0,-
4.0,
2.0]])
std_sample = raw_sample.copy(
)# 複製樣本
for col in std_sample.t:
# t表示轉置,遍歷每列
col_mean = col.mean(
)# 計算每列均值
col_std = col.std(
)# 計算每列標準均差
col -= col_mean # 每個數字減去標準差
col /= col_std # 每個數字除以標準差
print
(std_sample)
# 列印均值移除後的資料
print
(std_sample.mean(axis=0)
)# 列印方向均值
print
(std_sample.std(axis=0)
)# 列印方向標準差
print
("############################"
)# 利用sklearn提供的api實現
std_sample = sp.scale(raw_sample)
# 均值移除
print
(std_sample)
# 列印均值移除後的資料
print
(std_sample.mean(axis=0)
)# 列印方向均值
print
(std_sample.std(axis=0)
)# 列印方向標準差
資料預處理
現實世界中資料大體上都是不完整,不一致的髒資料,無法直接進行資料探勘,或挖掘結果差強人意。為了提前資料探勘的質量產生了資料預處理技術。資料預處理有多種方法 資料清理,資料整合,資料變換,資料歸約等。這些資料處理技術在資料探勘之前使用,大大提高了資料探勘模式的質量,降低實際挖掘所需要的時間。一 資料清...
資料預處理
常見的資料預處理方法,以下通過sklearn的preprocessing模組來介紹 變換後各維特徵有0均值,單位方差。也叫z score規範化 零均值規範化 計算方式是將特徵值減去均值,除以標準差。sklearn.preprocessing scale x 一般會把train和test集放在一起做標...
資料預處理
用cut函式分箱 有時把數值聚集在一起更有意義。例如,如果我們要為交通狀況 路上的汽車數量 根據時間 分鐘資料 建模。具體的分鐘可能不重要,而時段如 上午 下午 傍晚 夜間 深夜 更有利於 如此建模更直觀,也能避免過度擬合。這裡我們定義乙個簡單的 可復用的函式,輕鬆為任意變數分箱。def binni...