什么是“零均值和单位方差”以及如何为 R 中的单列文件计算/标准化它?我还想将归一化值分为两类:
谢谢
最佳答案
引用“零均值和单位方差”意味着归一化变量的均值为 0,标准差(和方差)为 1。在 R 中归一化变量的一种方法是使用 scale
功能。下面是一个例子:
# create vector
set.seed(1234)
temp <- rnorm(20, 3, 7)
# take a look
> mean(temp)
[1] 1.245352
> sd(temp)
[1] 7.096653
# scale vector
tempScaled <- c(scale(temp))
# take a look
> mean(tempScaled)
[1] 1.112391e-17
> sd(tempScaled)
[1] 1
# find values below 0.5 standard deviation in scaled vector
tempScaled[tempScaled < -0.5]
# find values above 0.5 standard deviation in scaled vector
tempScaled[tempScaled > 0.5]
您还可以非常轻松地手动缩放变量:
tempScaled2 <- (temp - mean(temp)) / sd(temp)
> all.equal(tempScaled, tempScaled2)
[1] TRUE
关于r - 如何计算/归一化零均值和单位方差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37730926/