© 2008 Оксана Родионова, Алексей Померанцев
В этом пособии рассказывается о применении программного средства Chemometrics Add-In - специальной надстройки для системы Microsoft Excel. Программа Chemometrics Add-In предназначена для анализа данных методами Principal Component Analysis (PCA), Projection on Latent Structures (PLS1 и PLS2). Все вычисления производятся внутри рабочих книг Excel с помощью функций листа (worksheet functions) аналогично стандартным функциям, таким, как, например, МУМНОЖ. Предполагается, что читатель имеет базовые навыки работы в среде Excel, умеет проводить простейшие матричные вычисления с использованием функций листа.
В пособии интенсивно используются понятия и методы матричной алгебры – вектор, матрица, и т.п. Читателям, которые плохо знакомы с этим аппаратом, рекомендуется изучить, или, хотя бы просмотреть, пособие "Матрицы и векторы".
Настоящее пособие не является учебником по проекционным методам анализа многомерных данных. В нем приведены только основные формулы, поскольку они необходимы для понимания реализованных методов. Читатели, которые плохо знакомы с этим подходом, могут обратиться к Литературе.
Важная информация о работе с файлом Projection.xls
Ссылки на примеры помещены в текст как объекты Excel. По форме эти примеры имеют абстрактный, модельный характер, однако, по своей сути, они тесно связаны с задачами, встречающимися на практике
Проекционные методы интенсивно используются для анализа многомерных данных, прежде всего, в хемометрике. Они применяются и для одноблочных массивов X (классификация – PCA), так и для данных, состоящих из двух блоков X и Y (калибровка – PCR, PLS).
Пусть имеется матрица переменных X размерностью (I×J), где I – число образцов (строк), а J – это число независимых переменных (столбцов), которых, как правило, много (J>>1). С другой стороны, может еще иметься матрица откликов Y, размерностью (I×K), где I – это, естественно, тоже число образцов, а K – это число откликов.
Рис. 1 Многомерные данные
Суть проекционного подхода состоит в существенном понижении размерности исходных массивов, как блока X, так и блока Y. Подробное описание проекционных методов можно найти в Литературе.
Старейшим проекционным методом является метод главных компонент (Principal Component Analysis – PCA). В этом методе используются новые, формальные переменные ta, (a=1,…A), являющиеся линейной комбинацией исходных переменных xj (j=1,…J) –
ta=pa1x1+… paJxJ
или в матричном виде –
В этом уравнении 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 = Ea – t pt и применить к ним тот же алгоритм, заменив индекс a на a+1. Программа для реализации PCA в среде MatLab приведена в пособии MatLab. Руководство для начинающих.
После того, как построено пространство из главных компонент, новые образцы Xnew могут быть на него спроецированы, иными словами – определены матрицы их счетов Tnew. В методе PCA это делается очень просто –
Tnew.= Xnew P
Разумеется, матрица Xnew новых образцов должен предварительно быть модифицирован так же, как и вектора из обучающего набора X, по которым строилось PCA подпространство
Обобщением метода 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 = fa – qt и применить к ним тот же алгоритм, заменив индекс 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 = Fa – tqt и применить к ним тот же алгоритм, заменив индекс 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 = fa – qt и применить к ним тот же алгоритм, заменив индекс a на a+1.
В методе PLS2 новые матрицы Xnew и Ynew модифицируются так же, как и в обучающем наборе, и они превращаются в матрицы E0 и F0, a=0. Далее к ним применяет следующий алгоритм для a=1,…, A компонент
После вычисления a-ой PLS2 компоненты надо вычислить новые остатки Ea+1 = Ea – tpt и Fa+1 = Fa – tqt и применить к ним тот же алгоритм, заменив индекс a на a+1
Следует обратить внимание на то, что, и 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, которые затем применяются и к обучающему, и к проверочному набору
Проекционные методы реализованы в нескольких популярных программах, краткий обзор которых приведен в этом разделе. Чаще всего используются специализированные пакеты. Среди них – программа SIMCA, разработанная компанией Umetrics, и аналогичный пакет Unscrambler, компании Camo. В тройку самых популярных пакетов входит также PLS ToolBox компании Eigenvector Research, Inc. Первые две программы функционируют независимо (stand alone), тогда как последняя работает только внутри вычислительной среды MatLab.
Многие проекционные методы реализованы в статистических пакетах общего назначения, таких как Statistica, SPSS и в ряде других.
Существует одна условно свободно распространяемая программа. Это – Multivariate Analysis Add-in – надстройка для Excel, разработанная в Хемометрическом центре Бристольского университета под руководством проф. Р. Бреретона
Для иллюстрации работы надстройки 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.
Прежде чем использовать надстройку Chemometrics Add-In, необходимо ее установить. В состав установочного пакета входят два файла Chemometrics.dll и Chemometrics.xla.
Установочный пакет с демонстрационной версией надстройки Chemometrics Add-In можно скачать здесь. Демонстрационная версия ничем не отличается от полной, однако она работает только с "нашими" файлами: Calibration.xls, Excel.xls, Projections.xls, и т.д. Эти файлы можно изменять, но сохранять эти изменения нельзя. Полная версия может быть предоставлена по запросу.
Инструкция по установки надстройки Chemometrics Add-In находится здесь.
Надстройка Chemometrics Add-In получает всю исходную информацию из открытой рабочей книги Excel. Эта информация должна быть помещена в массивах непосредственно на рабочий лист (данные X и Y).
Пользователь может организовать рабочее пространство так, как ему удобно – использовать только один лист для размещения всей информации, или несколько листов, или даже листы в разных рабочих книгах. Полученные результаты также выводятся как массивы на листах рабочей книги. Программа не имеет ограничений на размер входной информации – количество образцов (I), переменных (J), и откликов (K) в данных. Размер данных ограничен только объемом памяти, который поддерживает операционная система, установленная на компьютере, а также ограничениями, налагаемыми программой Excel.
Надстройка Chemometrics Add-In содержит несколько функций, которыми можно пользоваться как обычными функциями рабочего листа Excel. Для этого надо активизировать Мастер функций ( ) и выбрать категорию Определенные пользователем. При этом в списке имен функций будут представлены описанные ниже функции.
Результатами работы этих функций являются массивы, поэтому они должны быть введены как формулы массива, т.е. с применением комбинации клавиш .
Аргументы функций должны быть числами или именами, массивами или ссылками, содержащими числа.
При вводе формулы необходимо обводить на листе массив, размеры которого соответствуют объему получаемой информации. При задании большего, чем следует массива, в излишних клетках выводятся символы #N/A. В противном случае, т.е. когда размеры массива вывода меньше, чем следует, часть результатов, лежащих за пределами массива, не выводится на лист.
Число
главных компонент
Во всех функциях участвует
необязательный аргумент PC
– число главных компонент (A). Если он
не задан, то выводится максимально
возможное для отмеченной области
количество столбцов матрицы счетов/
нагрузок. Если этот аргумент задан, но PC>min (I, J), то декомпозиция
делается для максимально возможного
количества ГК, а оставшиеся столбцы
заполняются символами #N/A.
Центрирование
и/или шкалирование
Также во всех функциях участвует
необязательные аргументы
CentWeightX
и СentWeightY,
определяющие проводится ли центрирование и/или
шкалирование X и Y переменных. Они
могут принимать значения:
;
- нет ни шкалирования, ни центрирования (значение по умолчанию)
- только центрирование: вычитание среднего значения по переменной;
- только шкалирование на среднеквадратичное отклонение переменной;
- и шкалирование, и центрирование одновременно, т.е. автошкалирование.
Если аргумент CentWeightX или CentWeightY опущен, то предполагается, что он равен 0.
Возвращает значения счетов 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок P в соответствии с уравнением (1) метода главных компонент по заданным значениям матрицы X.
Синтаксис
LoadingsPCA (X [, PC] [, CentWeightX])
X – множество значений X (калибровочный набор)
PC – необязательный аргумент. Целая величина, определяющая число главных компонент (A), используемых в методе главных компонент.
CentWeightX – необязательный аргумент. Целая величина, определяющая проводится ли центрирование и/или шкалирование X переменных.
Примечания
Результат является массивом (матрицей), в которой число столбцов равно числу ГК (A), а число строк равно числу столбцов (переменных, J) в массиве X.
Аналогичная стандартная функция листа: МОБР
Пример
Рис. 5 Пример ввода функции LoadingsPCA
Функция LoadingsPCA является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения счетов 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения счетов 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает значения нагрузок 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 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает единичную квадратную матрицу
Синтаксис
MIdent(Size)
Size – аргумент (целое число) который задает размерность матрицы
Примечание
Результат является массивом (квадратная матрица) у которой число строк и столбцов равно Size
Аналогичных стандартных функции листа нет
Пример
Рис. 16 Пример ввода/вывода функции MIdent
Функция MIdent является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает матрицу из нулей и единиц, получившуюся в результате вырезание блока строк из единичной матрицы
Синтаксис
MIdentD2(Size, CutFrom, CutOff)
Size – аргумент (целое число > 1), который задает размерность исходной единичной матрицы
CutFrom – аргумент (целое число > 0), определяющий номер строки с который начинается вырезание блока
CutOff – аргумент (целое число ≥ 0), определяющий число строк в исключенном блоке
Примечание
Результат является массивом (прямоугольной матрицей) с числом строк = Size – CutOff, и числом столбцов = Size
Если (CutFrom + CutOff – 1) > Size функция возвращает сообщение об ошибке
Аналогичных стандартных функции листа нет
Пример
Рис. 17 Пример ввода/вывода функции MIdentD2
Функция MIdentD2 является формулой массива и ее ввод должен завершаться нажатием комбинации .
Возвращает матрицу у которой вырезан блок строк
Синтаксис
MCutRows(X, CutFrom, CutOff)
X – исходный массив, из которого вырезаются строки
CutFrom – аргумент (целое число > 0), определяющий номер строки, с который начинается вырезание блока
CutOff – аргумент (целое число ≥ 0), определяющий число строк, которые надо исключить из массива X
Примечание
Функция определяет исходный размер массива X : nRows и nColumns. Результат – это массив (матрица) с числом строк = nRows – CutOff, и числом столбцов = nColumns
Если (CutFrom + CutOff – 1) > nRows функция возвращает сообщение об ошибке
Аналогичная стандартная функция листа: СМЕЩ
Пример
Рис. 18 Пример ввода/вывода функции MCutRows
Функция MCutRows является формулой массива и ее ввод должен завершаться нажатием комбинации .
Содержание
6.4. MTrace
Возвращает след матрицы
MTrace(X)
X – квадратный массив (матрица)
Примечание
Пример
Рис. 18 Пример ввода/вывода функции MTrace
Функция MTrace не является формулой массива и ее ввод может завершаться нажатием одной клавиши
Надстройка Chemometrics Add-In дает возможность вычисления разных величин (счетов, нагрузок), связанных с проекционным представлением исходных данных. Далее, комбинируя эти показатели, можно создать типичные графики, применяемые в анализе данных (например, графики счетов и нагрузок), построить калибровки, найти такие важные характеристики как среднеквадратичные остатки калибровки (RMSEC) и при проверке (RMSEP), и т.п.
Примеры приведены в пособиях:
Матричные операции в Excel и сопровождающем его файле Excel.xls;
Метод главных компонент и сопровождающем его файле People.xls;
Калибровка и в сопровождающем его файле Calibration.xls;
Классификация и в сопровождающем его файле Iris.xls;
Разрешение многомерных кривых и в сопровождающем его файле MCR.xls;