R语言实现数据的标准化
1、min-max数据标准化
> dat <- c(34, 24, 78, 43, 98, 87) ## 测试向量 > dat [1] 34 24 78 43 98 87 > min(dat) ## 最小值 [1] 24 > max(dat) ## 最大值 [1] 98 > (dat - min(dat))/(max(dat) - min(dat)) ## 标准化(取值范围为0到1) [1] 0.14 0.00 0.73 0.26 1.00 0.85
2、z-score数据标准化(所有项减去平均数,然后除以标准差)
> dat <- c(34, 24, 78, 43, 98, 87) ## 测试向量 > dat [1] 34 24 78 43 98 87 > mean(dat) ## 平均值 [1] 61 > sd(dat) ## 标准差 [1] 31 > (dat - mean(dat))/sd(dat) ## z-score标准化 [1] -0.86 -1.19 0.56 -0.57 1.21 0.85
3、对数转换log2(x):
> dat <- c(34, 24, 78, 43, 98, 87) > dat [1] 34 24 78 43 98 87 > log2(dat) ## 求以2为底,dat的指数 [1] 5.1 4.6 6.3 5.4 6.6 6.4