我在下面有一个数据集:
A B C D
500 2 4 6
501 6 8 45
502 4 7 9
如何规范化除第一列之外的每一列,并与每列的平均值设置标准偏差。
因此,例如下面是每列的平均值:
B = 4
C = 6.333
D = 20
然后我想用边界进行归一化,使其不超过任一方向平均值的 25%。
我认为您可以通过重新缩放来做到这一点,但我只是不知道如何将其应用于所有列:
library(scales)
rescale(x, to = c(mean - 0.25*mean, mean + 0.25*mean)
我知道这是一种方法,但它没有考虑到界限和 25% 的标准偏差集:
normalized <- function(x){
return((x-min(x)) / (max(x)-min(x)))
}
normalized_dataset<-df %>%
mutate_at(vars(-one_of("A")), normalized)