将一组数字重新缩放到新的比例

时间:2018-06-05 09:10:31

标签: math

我正在尝试将一组数字重新缩放到具有某些特定要求的新规模。

想象一下,我有一组介于1-100之间的数字

我希望能够将这组数字缩放到80到120之间的新比例,其中80是原始集合的最小值,120是原始集合的最大值,100是平均值。

使用一个小例子:

对于集合[43,46,56,21,25,94]

在新比例21上将映射到80,94将映射到120,而44.2将映射到100。

1 个答案:

答案 0 :(得分:0)

将范围f缩放为[a b]的地图[c d]f(x) = (x-a)*(d-c)/(b-a) + c

但是,我不认为可以确保线性f也将范围[a b]中包含的集合中任意值的平均值映射到范围{{中的指定值1}}(包括c和d的平均值)。

为此,您必须分别将[c d]缩放为[a mean],将[c (c+d)/2)]缩放为[mean b],或使用其他非线性映射。