Ответ 1
Если вы хотите нормализовать до [x, y]
, сначала нормализуйтесь до [0, 1]
с помощью:
range = max(a) - min(a);
a = (a - min(a)) / range;
Затем масштабируйте до [x,y]
с помощью:
range2 = y - x;
a = (a * range2) + x;
Объединяя все это:
function normalized = normalize_var(array, x, y)
% Normalize to [0, 1]:
m = min(array);
range = max(array) - m;
array = (array - m) / range;
% Then scale to [x,y]:
range2 = y - x;
normalized = (array*range2) + x;