Матрицы процесса путем отображения строки минимальные и максимальные значения с [-1 1]
[Y,PS] = mapminmax(X,YMIN,YMAX)
[Y,PS] = mapminmax(X,FP)
Y = mapminmax('apply',X,PS)
X = mapminmax('reverse',Y,PS)
dx_dy = mapminmax('dx_dy',X,Y,PS)
mapminmax матрицы процессов путем нормализации минимальных и максимальных значений каждой строки к [YMINymax ].
[Y,PS] = mapminmax(X,YMIN,YMAX) берет X и дополнительные параметры
X |
|
YMIN | Минимальное значение для каждой строки |
YMAX | Максимальное значение для каждой строки |
и возвращается
Y |
|
PS | Настройки процесса, которые позволяют сопоставимую обработку значений |
[Y,PS] = mapminmax(X,FP) берет параметры в качестве struct: FP.ymin, FP.ymax.
Y = mapminmax('apply',X,PS) возвращает Y, учитывая X и настройки PS.
X = mapminmax('reverse',Y,PS) возвращает X, учитывая Y и настройки PS.
dx_dy = mapminmax('dx_dy',X,Y,PS) возвращает противоположную производную.
Вот то, как отформатировать матрицу так, чтобы минимальные и максимальные значения каждой строки были сопоставлены с интервалом по умолчанию [-1,+1].
x1 = [1 2 4; 1 1 1; 3 2 2; 0 0 0] [y1,PS] = mapminmax(x1)
Затем примените те же настройки обработки к новым значениям.
x2 = [5 2 3; 1 1 1; 6 7 3; 0 0 0]
y2 = mapminmax('apply',x2,PS)
Инвертируйте обработку y1 получить x1 снова.
x1_again = mapminmax('reverse',y1,PS)
Это принято тот X имеет только конечные действительные значения, и что элементы каждой строки не все равны. (Если xmax=xmin или если любой xmax или xmin являются неличными, затем y=x и никакое изменение не происходит.)
y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin;