Изменение масштаба набора чисел к новому масштабу - PullRequest
0 голосов
/ 05 июня 2018

Я пытаюсь масштабировать набор чисел в новую шкалу с некоторыми особыми требованиями.

Представьте, что у меня есть набор чисел от 1 до 100

Я хочу иметь возможностьмасштабируйте этот набор чисел до новой шкалы от 80 до 120, где 80 - это минимум исходного набора, 120 - это максимум исходного набора, а 100 - это среднее.

Чтобы использовать небольшой пример:

Для набора [43,26,56,21,25,94]

В новом масштабе 21 будет соответствовать 80, 94 будет 120, а 44.2 - 100.

1 Ответ

0 голосов
/ 05 июня 2018

Карта f, которая масштабирует диапазон от [a b] до [c d], равна f(x) = (x-a)*(d-c)/(b-a) + c

Однако я не думаю, что можно гарантировать, что линейная f также отображает среднеепроизвольных значений в наборе, содержащихся в диапазоне [a b], до указанного значения в диапазоне [c d] (включая среднее значение c и d).

Для этого вам придется либо масштабировать [a mean] к [c (c+d)/2)] и [mean b] к [(c+d)/2 d] по отдельности или используйте другое нелинейное отображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...