R 中的 z-score 标准化
在统计学中,任务是标准化变量,称为评估 z 分数。比较两个标准化变量是标准化向量的函数。通过将向量减去其均值并将结果除以向量的标准偏差,我们可以对向量进行标准化。
公式:
Z= (x – mean)/standard deviation
方法:
- 声明一个向量
- 通过函数mean()和sd()计算其均值和标准差。
- 要创建标准化向量:
- 从向量中减去均值
- 现在将上述结果除以标准差
R
a <- c(7, 8, 3, 2, 2, 10, 9)
# Finding Mean
m<-mean(a)
# Finding Standard Deviation
s<-sd(a)
#standardized vector
a.z<-(a-m)/s
a.z
R
a <- c(7, 8, 3, 2, 2, 10, 9)
# Finding Mean
m<-mean(a)
# Finding Standard Deviation
s<-sd(a)
#standardized vector
a.z<-(a-m)/s
mean(a.z)
sd(a.z)
R
a <- c(10, 6, 3, 5, 4)
b <- c(150, 200, 500, 600, 850)
a.z <- (a - mean(a)) / sd(a)
b.z <- (b - mean(b)) / sd(b)
average.z <- (a.z + (b.z)) / 2
round(average.z, 1)
输出:
[1] 0.3325644 0.6235582 -0.8314110 -1.1224048 -1.1224048 1.2055459 0.9145521
现在我们还可以通过检查其均值是否为零和标准差是否为 1 来检查向量是否已正确标准化。均值的答案不是完全为零,而是几乎为零。这是可以接受的,因为它是计算机定律的结果。
程序:
电阻
a <- c(7, 8, 3, 2, 2, 10, 9)
# Finding Mean
m<-mean(a)
# Finding Standard Deviation
s<-sd(a)
#standardized vector
a.z<-(a-m)/s
mean(a.z)
sd(a.z)
输出:
[1] 1.427197e-16
[1] 1
示例 2:
电阻
a <- c(10, 6, 3, 5, 4)
b <- c(150, 200, 500, 600, 850)
a.z <- (a - mean(a)) / sd(a)
b.z <- (b - mean(b)) / sd(b)
average.z <- (a.z + (b.z)) / 2
round(average.z, 1)
输出:
[1] 0.3 -0.4 -0.4 0.1 0.4