Я видел формулу нормализации min-max, но она нормализует значения между 0 и 1. Как бы я нормализовал мои данные между -1 и 1? В моей матрице данных есть как отрицательные, так и положительные значения.
Я видел формулу нормализации min-max, но она нормализует значения между 0 и 1. Как бы я нормализовал мои данные между -1 и 1? В моей матрице данных есть как отрицательные, так и положительные значения.
Ответы:
x[0,1]
Для нормализации в вы можете использовать:
В общем, вы всегда можете получить новую переменную в : [ а , б ]
Я проверил на случайно сгенерированных данных, и
не сохраняет форму распределения. Очень хотелось бы увидеть правильное вывод этого с использованием функций случайных величин.
Подход, который сохранил форму для меня, использовал:
где
(Я признаю, что использование 6 немного грязно ) и
а также
и - желаемый диапазон; так что в соответствии с первоначальным вопросом будет и .
Я пришел к результату из этого рассуждения
set.seed(1); scale(rnorm(1000))*.333
. Я получаю максимум 1.230871
. Ваш метод, кажется, просто настраивает данные, а не нормализует их по запросу. Обратите внимание, что вопрос не требует метода, который сохраняет форму распределения (что было бы странным требованием для нормализации).