熱線電話:13121318867

登錄
首頁精彩閱讀基于R語言的數據標準化處理腳本
基于R語言的數據標準化處理腳本
2018-06-10
收藏

基于R語言數據標準化處理腳本

數據標準化(Normalization)
將數據按比例縮放,使之落入一個小的特定區間。去除數據的單位限制,將其轉化為無量綱的純數值,便于不同單位或量級的指標能夠進行比較和加權。

數據標準化處理主要包括數據同趨化處理和無量綱化處理兩個方面。
數據同趨化處理主要解決不同性質數據問題,對不同性質指標直接加總不能正確反映不同作用力的綜合結果,須先考慮改變逆指標數據性質,使所有指標對測評方案的作用力同趨化,再加總才能得出正確結果。
數據無量綱化處理主要解決數據的可比性。數據標準化的方法有很多種,常用的有“最小—最大標準化”、“Z-score標準化”和“按小數定標標準化”等。經過上述標準化處理,原始數據均轉換為無量綱化指標測評值,即各指標值都處于同一個數量級別上,可以進行綜合測評分析。
min-max標準化(Min-max normalization)
也叫離差標準化,是對原始數據的線性變換,使結果落在[0,1]區間,轉換函數如下:
正向指標:(x-min)/(max-min)
負向指標:(max-x)/(max-min)
其中max為樣本數據的最大值,min為樣本數據的最小值。這種方法有一個缺陷就是當有新數據加入時,可能導致max和min的變化,需要重新定義。
R語言實現
# 標準化處理
min.max.norm <- function(x){
  ((x-min(x))/(max(x)-min(x)))
}   #正向指標

max.min.norm <- function(x){
  ((max(x)-x)/(max(x)-min(x)))
}   #負向指標


data_1 <- apply(data[,-c(3,4)],2,min.max.norm)  #正向指標處理
data_2 <- apply(data[,c(3,4)],2,max.min.norm)   #負向指標處理
#注意array只能用在二維及以上

data_t <- cbind(data_1,data_2)

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢