minmax 정규화 정리

직접 계산하는 방법

pg <- palmerpenguins::penguins
minmax_scale <- function(x) {
  (x - min(x, na.rm = T))/(max(x, na.rm = T)-min(x, na.rm = T))
}

body_mass_minmax <- minmax_scale(pg$body_mass_g)
summary(body_mass_minmax)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##  0.0000  0.2361  0.3750  0.4172  0.5694  1.0000       2

caret package를 이용한 방법

require(caret)
minmax_process <- preProcess(as.data.frame(pg$body_mass_g), method = c("range"))
body_mass_minmax <- predict(minmax_process, as.data.frame(pg$body_mass_g))
summary(body_mass_minmax)
##  pg$body_mass_g  
##  Min.   :0.0000  
##  1st Qu.:0.2361  
##  Median :0.3750  
##  Mean   :0.4172  
##  3rd Qu.:0.5694  
##  Max.   :1.0000  
##  NA's   :2