Проекционные методы в системе Excel

© 2008 Оксана Родионова, Алексей Померанцев 

Содержание 

Введение
1. Проекционные методы
1.1. Постановка задачи
1.2. PCA
1.3. PLS
1.4. Подготовка данных
1.5. Программы
1.6. Модельный пример
2. Использование надстройки Chemometrics Add-In
2.1. Установка
2.2. Общие сведения
3. PCA
3.1. ScoresPCA
3.2. LoadingsPCA
4.PLS
4.1. ScoresPLS
4.2. UScoresPLS
4.3. LoadingsPLS
4.4. WLoadingsPLS
4.5. QLoadingsPLS
5. PLS2 
5.1. ScoresPLS2 
5.2. UScoresPLS2
5.3. LoadingsPLS2 
5.4. WLoadingsPLS2
5.5. QLoadingsPLS2
6. Дополнительные матричные функции
6.1 MIdent 
6.2 MIdentD2
6.3 MCutRows
6.4 MTrace
Заключение
 

Введение

В этом пособии рассказывается о применении программного средства Chemometrics Add-In - специальной надстройки для системы Microsoft Excel. Программа Chemometrics Add-In предназначена для анализа данных методами Principal Component Analysis (PCA), Projection on Latent Structures (PLS1 и PLS2). Все вычисления производятся внутри рабочих книг Excel с помощью функций листа (worksheet functions) аналогично стандартным функциям, таким, как, например, МУМНОЖ. Предполагается, что читатель имеет базовые навыки работы в среде Excel, умеет проводить простейшие матричные вычисления с использованием функций листа. 

В пособии интенсивно используются понятия и методы матричной алгебры – вектор, матрица, и т.п. Читателям, которые плохо знакомы с этим аппаратом, рекомендуется изучить, или, хотя бы просмотреть, пособие "Матрицы и векторы". 

Настоящее пособие не является учебником по проекционным методам анализа многомерных данных. В нем приведены только основные формулы, поскольку они необходимы для понимания реализованных методов. Читатели, которые плохо знакомы с этим подходом, могут обратиться к Литературе

Изложение иллюстрируется примерами, выполненными в рабочей книге Excel  Projection.xls, которая сопровождает этот документ.

Важная информация о работе с файлом Projection.xls

Ссылки на примеры помещены в текст как объекты Excel. По форме эти примеры имеют абстрактный, модельный характер, однако, по своей сути, они тесно связаны с задачами, встречающимися на практике

Другие пособия по хемометрике

Содержание

1. Проекционные методы

1.1. Постановка задачи

Проекционные методы интенсивно используются для анализа многомерных данных, прежде всего, в хемометрике. Они применяются и для одноблочных массивов X (классификация – PCA), так и для данных, состоящих из двух блоков X и Y (калибровка – PCR, PLS).

Пусть имеется матрица переменных X размерностью (I×J), где I – число образцов (строк), а J – это число независимых переменных (столбцов), которых, как правило, много (J>>1). С другой стороны, может еще иметься матрица откликов Y, размерностью (I×K), где I – это, естественно, тоже число образцов, а K – это число откликов.

 

Рис. 1 Многомерные данные

Суть проекционного подхода состоит в существенном понижении размерности исходных массивов, как блока X, так и блока Y. Подробное описание проекционных методов можно найти в Литературе.

Содержание 

1.2. PCA

Старейшим проекционным методом является метод главных компонент (Principal Component Analysis – PCA). В этом методе используются новые, формальные переменные ta, (a=1,…A), являющиеся линейной комбинацией исходных переменных xj (j=1,…J) –

ta=pa1x1+… paJxJ

или в матричном виде –

(1)

В этом уравнении T называется матрицей счетов (scores). Ее размерность – (I×A). Матрица P называется матрицей нагрузок (loadings). Ее размерность (A×J). E – это матрица остатков, размерностью (I×J).

Рис. 2 Графическое представление метода главных компонент

Новые переменные ta называются главными компонентами (Principal Components), поэтому и сам метод называется методом главных компонент (PCA). Число столбцов – ta в матрице T, и pa в матрице P – равно A, которое называется числом главных компонент (PC). Эта величина заведомо меньше числа переменных J и числа образцов I. Имеют место следующие соотношения –

TtT = Λ= diag{ λ1,…,λA},                 PtP = I

Для построения PCA счетов и нагрузок, используется рекуррентный алгоритм NIPALS, который на каждом шагу вычисляет одну компоненту. Сначала исходная матрица X преобразуется (как минимум – центрируется; см. раздел 1.4) и превращается в матрицу E0, a=0. Далее применяют следующий алгоритм. 

1. Выбрать начальный вектор t 
2. pt = tt Ea / ttt 
3. p = p / (ptp)½
4. t = Ea p / ptp
5. Проверить сходимость, если нет, то идти на 2

После вычисления очередной (a-ой) компоненты, полагаем ta=t и pa=p. Для получения следующей компоненты надо вычислить остатки Ea+1 = Eat pt и применить к ним тот же алгоритм, заменив индекс a на a+1. Программа для реализации PCA в среде MatLab приведена в пособии MatLab. Руководство для начинающих

После того, как построено пространство из главных компонент, новые образцы Xnew могут быть на него спроецированы, иными словами – определены матрицы их счетов Tnew. В методе PCA это делается очень просто –

Tnew.= Xnew P

Разумеется, матрица Xnew новых образцов должен предварительно быть модифицирован так же, как и вектора из обучающего набора X, по которым строилось PCA подпространство

Содержание.

1.3. PLS 

Обобщением метода PCA является метод проекций на латентные структуры (Projection on Latent Structures, PLS), в котором проводится одновременная декомпозиция матриц X и Y
 

Проекция строится согласованно – так, чтобы максимизировать корреляцию между соответствующими векторами X-счетов ta и Y-счетов ua.

Рис. 3 Графическое представление метода главных компонент

Если блок данных Y включает несколько откликов (т.е. K>1), можно построить две проекции исходных данных – PLS1 и PLS2. В первом случае для каждого из откликов yk строится свое проекционное подпространство. При этом и счета T (U) и нагрузки P (W, Q) , зависят от того, какой отклик используется. Этот подход называется PLS1. Для метода PLS2 строится только одно проекционное пространство, которое является общим для всех откликов. Имеют место следующие соотношения –

TtT = Λ= diag{ λ1,…,λA},     WtW = I,     T = XR,     R = W(PtW)1

RtP = I,    Yhat = XB=TQt,    B = RQt,     Qt = Λ1TtY,    Wt Λ–1UtX

Для построения PLS счетов и нагрузок, используется рекуррентный алгоритм, который на каждом шагу вычисляет одну PLS компоненту. 

Для PLS1 алгоритм выглядит следующим образом. Исходная матрица X и вектор y преобразуют (как минимум – центрируют; см. раздел 1.4), и они превращаются в матрицу E0 и вектор f0, a=0. Далее к ним применяет следующий алгоритм.

1. wt = fat Ea 
2. w = w / (wtw)½ 
3. t = Ea w
4. q = tt fa / ttt 
5. u = qfa / q2 
6. pt = tt Ea / ttt 

После вычисления очередной (a-ой) PLS1 компоненты надо положить: ta=t, pa=p, wa=w, ua=u и qa=q. Для получения следующей компоненты надо вычислить остатки Ea+1 = Ea t pt и fa+1 = faqt и применить к ним тот же алгоритм, заменив индекс a на a+1. 

Для PLS2 алгоритм выглядит следующим образом. Сначала исходные матрицы X и Y преобразуют (как минимум – центрируют; см. раздел 1.4), и они превращаются в матрицы E0 и F0, a=0. Далее к ним применяет следующий алгоритм.

1. Выбрать начальный вектор u 
2. wt = ut Ea 
3. w = w / (wtw)½ 
4. t = Ea w
5. qt = tt Fa / ttt 
6. u = Fa q/ qtq 
7. Проверить сходимость, если нет, то идти на 2
8. pt = tt Ea / ttt 

После вычисления очередной (a-ой) PLS2 компоненты надо положить: ta=t, pa=p, wa=w, ua=u и qa=q. Для получения следующей компоненты надо вычислить остатки Ea+1 = Ea t pt и Fa+1 = Fatqt  и применить к ним тот же алгоритм, заменив индекс a на a+1. Программы для реализации PLS1 и PLS2 в среде MatLab приведены в MatLab. Руководство для начинающих 

Вычисление счетов Tnew и Unew для новых образцов (Xnew , Ynew) в методе PLS сложнее, чем в PCA. Для PLS1, матрица Xnew , и вектор ynew модифицируются так же, как и в обучающем наборе и превращаются в E0 и f0, a=0. Далее к ним применяет следующий алгоритм для вычисления счетов для a=1,…, A компонент

1. t = Ea w
2. u =fa

После вычисления очередной (a-ой) PLS1 компоненты надо вычислить новые остатки Ea+1 = Ea t pt и fa+1 = faqt и применить к ним тот же алгоритм, заменив индекс a на a+1. 

В методе PLS2 новые матрицы Xnew и Ynew модифицируются так же, как и в обучающем наборе, и они превращаются в матрицы E0 и F0, a=0. Далее к ним применяет следующий алгоритм для a=1,…, A компонент 

1. t = Ea w
2. u = Fa q/ qtq 

После вычисления a-ой PLS2 компоненты надо вычислить новые остатки Ea+1 = Ea tpt и Fa+1 = Fatqt  и применить к ним тот же алгоритм, заменив индекс a на a+1

Содержание.

1.4. Подготовка данных 

Следует обратить внимание на то, что, и PCA, и PLS методы не учитывают свободного члена при разложении матриц X и Y.  Это видно из формул (1) и (2). В них исходно предполагается, что все столбцы матриц X и Y имеют нулевое среднее, т.е., 

и   для всех i=1,…, I и k=1,…, K

Это условие легко можно удовлетворить, проведя центрирование данных. Центрирование – это вычитание из исходной матрицы X матрицы M, т.е.

 

Обычно усреднение проводится по столбцам: для каждого вектора xj вычисляется среднее значение –

Тогда M=(m11,..., mJ1), где 1 – это вектор из единиц размерности I.

Центрирование – это почти обязательная процедура перед применением проекционных методов. Второе простейшее преобразование данных, нормирование, не является столь обязательным. Нормирование, в отличие от центрирования, не меняет структуру данных, а просто изменяет вес различных частей данных при обработке. Чаще всего применяется нормирование по столбцам – это умножение исходной матрицы X справа на матрицу W, т.е. . 

Матрица W – это диагональная матрица размерности J×J. Обычно диагональные элементы wjj равны обратным значениям стандартного отклонения.

вычисленным для каждого столбца xj. Нормирование по строкам (называемое также нормализацией) – это умножение матрицы X слева на диагональную матрицу W, т.е.

При этом размерность W равна I×I, а ее элементы wii – это обратные значения стандартных отклонений строк xit

Комбинация центрирования и нормирования по столбцам

называется автошкалированием. Нормирование данных часто применяют для того, чтобы уравнять вклад в модель от различных переменных (например, в гибридном методе ЖХ-МС), учесть неравномерные погрешности, или для того, чтобы обрабатывать совместно разные блоки данных. Нормирование также можно рассматривать как метод, позволяющий стабилизировать вычислительные алгоритмы. В тоже время, к этому преобразованию нужно относиться с большой осторожностью, т.к. оно может сильно исказить результаты качественного анализа. Любое преобразование данных – центрирование, шкалирование, и т.п. – всегда делается сначала на обучающем наборе. По этому набору находятся значения  mj и dj, которые затем применяются и к обучающему, и к проверочному набору

Содержание.

1.5. Программы 

Проекционные методы реализованы в нескольких популярных программах, краткий обзор которых приведен в этом разделе. Чаще всего используются специализированные пакеты. Среди них – программа SIMCA, разработанная компанией Umetrics, и аналогичный пакет Unscrambler, компании Camo. В тройку самых популярных пакетов входит также PLS ToolBox компании Eigenvector Research, Inc. Первые две программы функционируют независимо (stand alone), тогда как последняя работает только внутри вычислительной среды MatLab. 

Многие проекционные методы реализованы в статистических пакетах общего назначения, таких как Statistica, SPSS и в ряде других.

Существует одна условно свободно распространяемая программа. Это – Multivariate Analysis Add-in – надстройка для Excel, разработанная в Хемометрическом центре Бристольского университета под руководством проф. Р. Бреретона

Содержание.

1.6. Модельный пример 

Для иллюстрации работы надстройки Chemometrics Add-In используется модельный пример, помещенный в файл Projection.xls. В нем приведены данные (X, Y), к которым применяются описанные здесь процедуры. Данные нуждаются в центрировании, но не требуют шкалирования.  

Файл Projection.xls. включает в себя следующие листы: 

Intro: краткое введение 

Data: данные, используемые в примере. Блок независимых переменных X состоит из 14 образцов (9 – в калибровочном и 5 – в проверочном наборе) и 50 переменных. Блок Y включает два отклика, соответствующих тем же 14 образцам. Приведена также схема, объясняющая имена массивов, используемых в примере. 

PCA: примеры применения функций ScoresPCA и LoadingsPCA

PLS1: примеры применения функций ScoresPLS, UScoresPLS, LoadingsPLS, WLoadingsPLS и QLoadingsPLS

PLS2: примеры применения функций ScoresPLS2, UScoresPLS2, LoadingsPLS2, WLoadingsPLS2 и QLoadingsPLS2.

Plus: примеры применения дополнительных функций  MIdent, MIdentD2, MTrace, и MCutRows

Unscrambler: сравнение результатов, полученных надстройкой Chemometrics Add-In и программой the Unscrambler

SIMCA-P: сравнение результатов, полученных надстройкой Chemometrics Add-In и программой SIMCA

Содержание

2. Использование надстройки Chemometrics Add-In

2.1. Установка

Прежде чем использовать надстройку Chemometrics Add-In, необходимо ее установить. В состав установочного пакета входят два файла Chemometrics.dll и Chemometrics.xla.

Установочный пакет с демонстрационной версией надстройки Chemometrics Add-In можно скачать здесь. Демонстрационная версия ничем не отличается от полной, однако она работает только с "нашими" файлами: Calibration.xls, Excel.xls, Projections.xls, и т.д. Эти файлы можно изменять, но сохранять эти изменения нельзя. Полная версия может быть предоставлена по запросу.

Инструкция по установки надстройки Chemometrics Add-In находится  здесь.

Содержание

2.2. Общие сведения 

Надстройка Chemometrics Add-In получает всю исходную информацию из открытой рабочей книги Excel. Эта информация должна быть помещена в массивах непосредственно на рабочий лист (данные X и Y). 

Пользователь может организовать рабочее пространство так, как ему удобно – использовать только один лист для размещения всей информации, или несколько листов, или даже листы в разных рабочих книгах. Полученные результаты также выводятся как массивы на листах рабочей книги. Программа не имеет ограничений на размер входной информации – количество образцов (I), переменных (J), и откликов (K) в данных. Размер данных ограничен только объемом памяти, который поддерживает операционная система, установленная на компьютере, а также ограничениями, налагаемыми программой Excel. 

Надстройка Chemometrics Add-In содержит несколько функций, которыми можно пользоваться как обычными функциями рабочего листа Excel. Для этого надо активизировать Мастер функций  (Insert-Function) и выбрать категорию Определенные пользователем. При этом в списке имен функций будут представлены описанные ниже функции. 

Результатами работы этих функций являются массивы, поэтому они должны быть введены как формулы массива, т.е. с применением комбинации клавиш Ctrl+Shift+Enter

Аргументы функций должны быть числами или именами, массивами или ссылками, содержащими числа. 

При вводе формулы необходимо обводить на листе массив, размеры которого соответствуют объему получаемой информации. При задании большего, чем следует массива, в излишних клетках выводятся символы #N/A. В противном случае, т.е. когда размеры массива вывода меньше, чем следует, часть результатов, лежащих за пределами массива, не выводится на лист. 

Число главных компонент 
Во всех функциях участвует необязательный аргумент PC – число главных компонент (A). Если он не задан, то выводится максимально возможное для отмеченной области количество столбцов матрицы счетов/ нагрузок. Если этот аргумент задан, но PC>min (I, J), то декомпозиция делается для максимально возможного количества ГК, а оставшиеся столбцы заполняются символами #N/A.

Центрирование и/или шкалирование
Также во всех функциях участвует необязательные аргументы CentWeightX и СentWeightY, определяющие проводится ли центрирование и/или шкалирование X и Y переменных. Они могут принимать значения:

0 -  нет ни шкалирования, ни центрирования (значение по умолчанию);
1 -  только центрирование: вычитание среднего значения по переменной; 
2 -  только шкалирование на среднеквадратичное отклонение переменной;
3  - и шкалирование, и центрирование одновременно, т.е. автошкалирование.

Если аргумент CentWeightX или CentWeightY опущен, то предполагается, что он равен 0. 

Содержание

3. PCA

3.1. ScoresPCA 

Возвращает значения счетов T в соответствии с уравнением (1) метода главных компонент по заданным значениям матрицы X и Xnew.

Синтаксис 

ScoresPCA (X [, PC] [,CentWeightX] [, Xnew]) 

X – множество значений X (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе главных компонент. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

Xnew– необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения счетов T

Примечания 

  • Матрица новых значений Xnew должна иметь столько же столбцов (переменных), как и матрица X

  • Если аргумент Xnew опущен, то предполагается, что он совпадает с массивом X

  • Результат является массивом (матрицей), в которой число строк равно числу строк (образцов, I) в массиве Xnew, а число столбцов равно числу ГК (A). 

  • Аналогичная стандартная функция листа: ТЕНДЕНЦИЯ 

Пример

Рис. 4 Пример ввода функции ScoresPCA

Функция ScoresPCA является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

3.2. LoadingsPCA 

Возвращает значения нагрузок P в соответствии с уравнением (1) метода главных компонент по заданным значениям матрицы X.

Синтаксис 

LoadingsPCA (X [, PC] [, CentWeightX])

X – множество значений X (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе главных компонент. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

Примечания 

  • Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, J) в массиве X

  • Аналогичная стандартная функция листа: МОБР

Пример

Рис. 5 Пример ввода функции LoadingsPCA

Функция LoadingsPCA является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

4. PLS

4.1. ScoresPLS 

Возвращает значения PLS счетов T в соответствии с уравнением (2) метода PLS по заданным значениям матриц X и Y , а также матрицы Xnew .

Синтаксис 

ScoresPLS (X, Y [, PC] [, CentWeightX] [, CentWeightY] [, Xnew] )

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Xnew – необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения PLS счетов T

Примечания 

  • Матрица значений Y должна иметь только один столбец (отклик, K=1) . 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Матрица новых значений Xnew должна иметь столько же столбцов (переменных J), как и матрица X

  • Если аргумент Xnew опущен, то предполагается, что он совпадает с массивом X

  • Результат является массивом (матрицей), в которой число строк равно числу строк (образцов, I) в массиве Xnew, а число столбцов равно числу ГК (A). 

  • Аналогичная стандартная функция листа: ТЕНДЕНЦИЯ 

Пример

Рис.6 Пример ввода функции ScoresPLS

Функция ScoresPLS является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

4.2. UScoresPLS 

Возвращает значения счетов U в соответствии с уравнением (2) метода PLS по заданным значениям матриц X и Y , а также матриц Xnew и Ynew.

Синтаксис 

UScoresPLS (X, Y, [, PC] [, CentWeightX] [, CentWeightY] [, Xnew][, Ynew]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Xnew – необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения PLS счетов T

Ynew – необязательный аргумент. Множество новых значений Ynew (проверочный набор) для которых вычисляются и выводятся значения PLS счетов U

Примечания 

  • Матрица значений Y должна иметь только один столбец (отклик, K=1) . 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Матрица новых значений Xnew должна иметь столько же столбцов (переменных J), как и матрица X

  • Если аргумент Xnew опущен, то предполагается, что он совпадает с массивом X

  • Результат является массивом (матрицей), в которой число строк равно числу строк (образцов, I) в массиве Xnew, а число столбцов равно числу ГК (A). 

  • Матрицы новых значений Xnew и Ynew должны иметь одинаковое количество строк.

  • Если аргумент Ynew опущен, то предполагается, что он совпадает с массивом Y .

  • Аналогичная стандартная функция листа: ТЕНДЕНЦИЯ 

Пример

Рис.7 Пример ввода функции UScoresPLS

Функция UScoresPLS является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

4.3 LoadingsPLS 

Возвращает значения нагрузок P в соответствии с уравнением (2) метода PLS по заданным значениям матриц X и Y.

Синтаксис 

LoadingsPLS (X, Y [, PC] [, CentWeightX] [, CentWeightY]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Xnew – необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения PLS счетов T

Примечания 

  • Матрица значений Y должна иметь только один столбец (отклик, K=1). 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, J) в массиве X

  • Аналогичная стандартная функция листа: МУМНОЖ

Пример

Рис. 8 Пример ввода функции LoadingsPLS

Функция LoadingsPLS является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

4.4 WLoadingsPLS 

Возвращает значения нагрузок W в соответствии с уравнением (2) метода PLS по заданным значениям матриц X и Y.

Синтаксис 

WLoadingsPLS (X, Y [, PC] [, CentWeightX] [, CentWeightY]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Xnew – необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения PLS счетов T

Примечания

  • Матрица значений Y должна иметь только один столбец (отклик, K=1). 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, J) в массиве X

  • Аналогичная стандартная функция листа: МУМНОЖ

Пример

Рис. 9 Пример ввода функции WLoadingsPLS

Функция WLoadingsPLS является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

4.5 QLoadingsPLS 

Возвращает значения нагрузок Q в соответствии с уравнением (2) метода PLS по заданным значениям матриц X и Y.

Синтаксис 

QLoadingsPLS (X, Y [, PC] [, CentWeightX] [, CentWeightY]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Примечания 

  • Матрица значений Y должна иметь только один столбец (отклик, K=1). 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Результат является массивом (вектором), в которой число столбцов равно числу ГК (A), а число строк равно числу откликов, т.е 1 

  • Аналогичная стандартная функция листа: МУМНОЖ

Пример

Рис. 10 Пример ввода функции QLoadingsPLS

Функция QLoadingsPLS является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

5. PLS2

5.1. ScoresPLS2 

Возвращает значения PLS2 счетов T в соответствии с уравнением (2) метода PLS2 по заданным значениям матриц X и Y , а также матрицы Xnew.

Синтаксис 

ScoresPLS2(X, Y [, PC] [, CentWeightX] [, CentWeightY] [, Xnew] )

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Xnew – необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения PLS счетов T

Примечания 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Матрица новых значений Xnew должна иметь столько же столбцов (переменных J), как и матрица X

  • Если аргумент Xnew опущен, то предполагается, что он совпадает с массивом X

  • Результат является массивом (матрицей), в которой число строк равно числу строк (образцов, I) в массиве Xnew, а число столбцов равно числу ГК (A). 

  • Аналогичная стандартная функция листа: ТЕНДЕНЦИЯ 

Пример

Рис.11 Пример ввода функции ScoresPLS2

Функция ScoresPLS2 является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

5.2. UScoresPLS2 

Возвращает значения счетов U в соответствии с уравнением (2) метода PLS2 по заданным значениям матриц X и Y , а также матриц Xnew и Ynew.

UScoresPLS2 (X, Y, [, PC] [, CentWeightX] [, CentWeightY] [, Xnew][, Ynew])  

Синтаксис 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Xnew – необязательный аргумент. Множество новых значений Xnew (проверочный набор) для которых вычисляются и выводятся значения PLS2 счетов U

Ynew – необязательный аргумент. Множество новых значений Ynew (проверочный набор) для которых вычисляются и выводятся значения PLS2 счетов U

Примечания 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Матрица новых значений Xnew должна иметь столько же столбцов (переменных J), как и матрица X

  • Если аргумент Xnew опущен, то предполагается, что он совпадает с массивом X

  • Матрица значений Ynew должна иметь столько же столбцов (откликов K), как и матрица Y

  • Результат является массивом (матрицей), в которой число строк равно числу строк (образцов, I) в массиве Xnew, а число столбцов равно числу ГК (A). 

  • Матрицы новых значений Xnew и Ynew должны иметь одинаковое количество строк.

  • Если аргумент Ynew опущен, то предполагается, что он совпадает с массивом Y .

  • Аналогичная стандартная функция листа: ТЕНДЕНЦИЯ 

Пример

Рис.12 Пример ввода функции UScoresPLS2

Функция UScoresPLS2 является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

5.3 LoadingsPLS2 

Возвращает значения нагрузок P в соответствии с уравнением (2) метода PLS2 по заданным значениям матриц X и Y.

Синтаксис 

LoadingsPLS2 (X, Y [, PC] [, CentWeightX] [, CentWeightY]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Примечания 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, J) в массиве X

  • Аналогичная стандартная функция листа: МУМНОЖ

Пример

Рис. 13 Пример ввода функции LoadingsPLS2

Функция LoadingsPLS2 является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

5.4 WLoadingsPLS2 

Возвращает значения нагрузок W в соответствии с уравнением (2) метода PLS2 по заданным значениям матриц X и Y.

Синтаксис 

WLoadingsPLS2 (X, Y [, PC] [, CentWeightX] [, CentWeightY]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Примечания 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, J) в массиве X

  • Аналогичная стандартная функция листа: МУМНОЖ

Пример

Рис. 14 Пример ввода функции WLoadingsPLS2

Функция WLoadingsPLS2 является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

5.5 QLoadingsPLS2 

Возвращает значения нагрузок Q в соответствии с уравнением (2) метода PLS2 по заданным значениям матриц X и Y.

Синтаксис 

QLoadingsPLS2 (X, Y [, PC] [, CentWeightX] [, CentWeightY]) 

X – множество значений X (калибровочный набор) 

Y – множество значений Y (калибровочный набор) 

PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе PLS. 

CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных. 

CentWeightY – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование Y переменных. 

Примечания 

  • Матрица значений Y должна иметь столько же строк (образцов I), как и матрица X 

  • Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, K) в массиве Y

  • Аналогичная стандартная функция листа: МУМНОЖ

Пример

Рис. 15 Пример ввода функции QLoadingsPLS2

Функция QLoadingsPLS2 является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

6. Дополнительные матричные функции

6.1. MIdent

Возвращает единичную квадратную матрицу

Синтаксис

MIdent(Size)

Size – аргумент (целое число) который задает размерность матрицы

Примечание 

  • Результат является массивом (квадратная матрица) у которой число строк и столбцов равно Size

  • Аналогичных стандартных функции листа нет

Пример

Рис. 16 Пример ввода/вывода функции MIdent

Функция MIdent является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

6.2. MIdentD2

Возвращает матрицу из нулей и единиц, получившуюся в результате вырезание блока строк из единичной матрицы

Синтаксис

MIdentD2(Size, CutFrom, CutOff)

Size –  аргумент (целое число > 1), который задает размерность исходной единичной матрицы

CutFrom –  аргумент (целое число > 0), определяющий номер строки с который начинается вырезание блока

CutOff –  аргумент (целое число ≥ 0), определяющий число строк в исключенном блоке

Примечание 

  • Результат является массивом (прямоугольной матрицей) с числом строк = Size  CutOff, и числом столбцов =  Size

  • Если (CutFrom + CutOff –  1) > Size функция возвращает сообщение об ошибке

  • Аналогичных стандартных функции листа нет

Пример

Рис. 17 Пример ввода/вывода функции MIdentD2

Функция MIdentD2 является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

6.3. MCutRows

Возвращает матрицу у которой вырезан блок строк

Синтаксис

MCutRows(X, CutFrom, CutOff)

X – исходный массив, из которого вырезаются строки

CutFrom –  аргумент (целое число > 0), определяющий номер строки, с который начинается вырезание блока

CutOff –  аргумент (целое число ≥ 0), определяющий число строк, которые надо исключить из массива X

Примечание

  • Функция определяет исходный размер массива X : nRows и nColumns. Результат –  это массив (матрица) с числом строк =  nRows CutOff, и числом столбцов = nColumns

  • Если (CutFrom + CutOff –  1) > nRows функция возвращает сообщение об ошибке

  • Аналогичная стандартная функция листа: СМЕЩ

Пример

Рис. 18 Пример ввода/вывода функции MCutRows

Функция MCutRows является формулой массива и ее ввод должен завершаться нажатием комбинации CTRL+SHIFT+ENTER.

Содержание

6.4. MTrace

Возвращает след матрицы

MTrace(X) 

X –  квадратный массив (матрица)

Примечание

  • X должен содержать равное количество строк и столбцов
  • Аналогичная стандартная функция листа: МОПРЕД

Пример

Рис. 18 Пример ввода/вывода функции MTrace  

Функция MTrace не является формулой массива и ее ввод может  завершаться нажатием одной клавиши ENTER

Содержание

Заключение

Надстройка Chemometrics Add-In дает возможность вычисления разных величин (счетов, нагрузок), связанных с проекционным представлением исходных данных. Далее, комбинируя эти показатели, можно создать типичные графики, применяемые в анализе данных (например, графики счетов и нагрузок), построить калибровки, найти такие важные характеристики как среднеквадратичные остатки калибровки (RMSEC) и при проверке (RMSEP), и т.п.

Примеры приведены в пособиях:

 

Содержание