Столбцы процесса матрицы с анализом основных компонентов
[Y,PS] = processpca(X,maxfrac)
[Y,PS] = processpca(X,FP)
Y = processpca('apply',X,PS)
X = processpca('reverse',Y,PS)
name = processpca('name')
fp = processpca('pdefaults')
names = processpca('pdesc')
processpca('pcheck',fp);
processpca обрабатывает матрицы с использованием анализа основных компонентов таким образом, что каждая строка не коррелируется, строки находятся в порядке суммы, которую они вносят в общую вариацию, и строки, вклад которых в общую вариацию меньше, чем maxfrac удаляются.
[Y,PS] = processpca(X,maxfrac) берет X и необязательный параметр,
X |
|
maxfrac | Максимальная доля расхождения для удаленных строк (по умолчанию 0) |
и возвращает
Y |
|
PS | Параметры процесса, позволяющие согласованно обрабатывать значения |
[Y,PS] = processpca(X,FP) принимает параметры как структуру: FP.maxfrac.
Y = processpca('apply',X,PS) прибыль Y, учитывая X и настройки PS.
X = processpca('reverse',Y,PS) прибыль X, учитывая Y и настройки PS.
name = processpca('name') возвращает имя этого метода процесса.
fp = processpca('pdefaults') возвращает структуру параметров процесса по умолчанию.
names = processpca('pdesc') возвращает описания параметров процесса.
processpca('pcheck',fp); выдает ошибку, если какой-либо параметр недопустим.
Вот как отформатировать матрицу с независимой строкой, коррелированной строкой и полностью избыточной строкой так, чтобы ее строки были некоррелированы и избыточная строка была удалена.
x1_independent = rand(1,5) x1_correlated = rand(1,5) + x1_independent; x1_redundant = x1_independent + x1_correlated x1 = [x1_independent; x1_correlated; x1_redundant] [y1,ps] = processpca(x1)
Затем примените те же параметры обработки к новым значениям.
x2_independent = rand(1,5)
x2_correlated = rand(1,5) + x1_independent;
x2_redundant = x1_independent + x1_correlated
x2 = [x2_independent; x2_correlated; x2_redundant];
y2 = processpca('apply',x2,ps)
Сторнировать обработку y1 добираться x1 снова.
x1_again = processpca('reverse',y1,ps)
Значения в строках, элементы которых не имеют одинаковых значений, имеют значение
y = 2*(x-minx)/(maxx-minx) - 1;
Значения в строках с одинаковыми значениями равны 0.