首页 文章

如何计算/标准化零均值和单位方差

提问于
浏览
5

什么是“零均值和单位方差”以及如何计算/标准化R中的单列文件?我还想将规范化的值分为两类:

  • 归一化值至少比标准偏差高0.5标准差(SD)

  • 归一化值低于平均值至少0.5标准偏差(SD)

谢谢

1 回答

  • 5

    引号"Zero mean and unit variance"表示规范化变量的均值为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
    

相关问题