R語言歸一化處理實例講解

歸一化就是要把你需要處理的數據經過處理後(通過某種算法)限制在你需要的一定范圍內。首先歸一化是為瞭後面數據處理的方便,其次是保正程序運行時收斂加快。

R語言中的歸一化函數:scale

數據歸一化包括數據的中心化和數據的標準化。

1. 數據的中心化

所謂數據的中心化是指數據集中的各項數據減去數據集的均值。
例如有數據集1, 2, 3, 6, 3,其均值為3,那麼中心化之後的數據集為1-3,2-3,3-3,6-3,3-3,即:-2,-1,0,3,0

2. 數據的標準化

所謂數據的標準化是指中心化之後的數據在除以數據集的標準差,即數據集中的各項數據減去數據集的均值再除以數據集的標準差。
例如有數據集1, 2, 3, 6, 3,其均值為3,其標準差為1.87,那麼標準化之後的數據集為(1-3)/1.87,(2-3)/1.87,(3-3)/1.87,(6-3)/1.87,(3-3)/1.87,即:-1.069,-0.535,0,1.604,0

數據中心化和標準化的意義是一樣的,為瞭消除量綱對數據結構的影響。在R語言中可以使用scale方法來對數據進行中心化和標準化。

scale函數是將一組數進行處理,默認情況下是將一組數的每個數都減去這組數的平均值後再除以這組數的標準差。

其中有兩個參數:
center=TRUE,默認的,是將一組數中每個數減去平均值,若為false,則不減平均值;
scale=TRUE,默認的,是將一組數中每個數除以標準差。

scale默認情況下:將一組數的每個數都減去這組數的平均值後再除以這組數的標準差。

> scale(ss)
      [,1]
[1,] -1.3805850
[2,] -0.6371931
[3,] 0.1061988
[4,] 0.8495908
[5,] 1.5929827
[6,] 0.1061988
[7,] -0.6371931

attr(,"scaled:center")
[1] 2.857143

attr(,"scaled:scale")
[1] 1.345185

到此這篇關於R語言歸一化處理實例講解的文章就介紹到這瞭,更多相關R語言歸一化處理內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: