在R中将数值矩阵均匀地缩放为0-1的值

时间:2017-04-17 01:58:39

标签: r

我遇到了与我合作的几个矩阵的扩展问题。这是我的矩阵的一个例子:

my_matrix = matrix(data = c(1,2,3,4,5,6,7,8,25), nrow = 3)

我目前在0到1之间缩放的方法是使用公式(value - min)/(max - min)。在整个矩阵上使用它可得到以下结果:

mn = min(my_matrix); mx = max(my_matrix);
(my_matrix - mn) / (mx - mn)

           [,1]      [,2]      [,3]
[1,] 0.00000000 0.1250000 0.2500000
[2,] 0.04166667 0.1666667 0.2916667
[3,] 0.08333333 0.2083333 1.0000000

我理解计算,以及为什么我收到这个矩阵。但是,我更倾向于根据百分位数将0缩放为1,而是接收此矩阵:

           [,1]      [,2]      [,3]
[1,] 0.11111111 0.4444444 0.7777778
[2,] 0.22222222 0.5555556 0.8888889
[3,] 0.33333333 0.6666667 1.0000000

有人知道一个简单的方法吗?谢谢!

0 个答案:

没有答案