Файл: Основные понятия баз данных. Субд.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 12.12.2023

Просмотров: 50

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
 

Такое преобразование можно сделать с помощью обычных формул

Надо только не забыть указать знак $ перед номерами строк 9 (m) и 11 (s) , чтобы зафиксировать положение соответствующих величин в строках.

Если матрица X велика, то удобнее воспользоваться формулой массива. (Рис. 26). Назовем соответствующие области на листе: X, m и s. Отметим пустую область N3:R7, размеры которой совпадают с ожидаемым результатом. После этого введем в Formula Bar  выражение =(X-m)/s. Завершает ввод комбинация клавиш CTRL+SHIFT+ENTER. Если все сделано правильно, то в Formula Bar появится формула { =(X-m)/s}, заключенная в фигурные скобки {}. Это – признак формулы массива. .

2.2. Создание и изменение формул массива


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

Если выделить слишком большую область, то при вычислении избыточные ячейки будут заполнены символами ошибки #N/A. Если область вывода будет меньше, чем нужно, то часть результатов пропадет. После выделения области, в Formula Bar   записывается формула и нажимается CTRL+SHIFT+ENTER.

Альтернативно, сначала можно ввести формулу в одну ячейку, затем отметить область вывода, начиная с этой ячейки (право и вниз), потом перейти в Formula Bar и нажать CTRL+SHIFT+ENTER

Для того, чтобы изменить формулу массива нужно выделить область содержащую результат. Затем нужно перейти Formula Bar. При этом фигурные скобки вокруг формулы { } исчезнут. После этого формулу можно изменить и нажать CTRL+SHIFT+ENTER.

Для того чтобы расширить область, которую занимает формула массива, достаточно выделить для нее новую область, перейти в Formula Bar и нажать CTRL+SHIFT+ENTER. А вот для того, чтобы уменьшить эту область (например, чтобы избавиться от символов #N/A) придется потратить больше сил. Сначала нужно встать на любую ячейку области, перейти в Formula Bar и скопировать строку формулы. Затем нужно стереть содержимое старой области и отметить новую, меньшую область. После этого опять перейти в Formula Bar, вставить формулу и нажать CTRL+SHIFT+ENTER.

Изменять отдельные ячейки в формуле массива нельзя. При попытке сделать это появляется предупреждение .

2.3. Простейшие операции с матрицами



С помощью формул массива матрицы можно складывать и умножать на числа.

Для перемножения двух матриц используется функция MMULT

2.4. Доступ к частям матрицы 


Для доступа и отделения частей матрицы применяются две стандартные функции листа.

OFFSET / СМЕЩ

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

Синтаксис

OFFSET(referencerowscols [, height] [, width])  

reference – это ссылка на область, начиная с которой вычисляется смещение;

rows – число строк, на которое надо сместиться (положительное – вниз, отрицательное вверх от начала);

cols –То же, но для столбцов (положительное – вправо, отрицательное влево от начала);  

height –  необязательный аргумент. Положительное число строк возвращаемой ссылки;

width –  необязательный аргумент. Положительное число столбцов возвращаемой ссылки.  

Примечания 

  • Если аргументы height или width опущены, то предполагается, что используется такая же высота или ширина, как в аргументе reference;

  • Аргумент reference – это ссылка на область, которая должна быть реальным, а не виртуальным массивом, т.е. находиться где-то на листе. 

Пример

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

INDEX / ИНДЕКС

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

Синтаксис

INDEX (reference [, row_num] [, column_num])

reference –  это массив значений (матрица);

row_num – необязательный аргумент. Номер строки, из которой берутся значения;

col_num –необязательный аргумент. Номер столбца, из которого берутся значения;

Примечания 

  • Если аргумент row_num опущен, то выбирается весь столбец;

  • Если аргумент col_num опущен, то выбирается вся строка;

  • Если указаны оба необязательных аргумента, то возвращается значение, находящееся в ячейке на пересечении соответствующей строки и столбца;

  • Аргумент reference может быть ссылкой, как на область, так и на виртуальный массив.

Пример

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

2.5. Унарные операции


К матрицам можно применять следующие унарные формулы.

MINVERSE /  МОБР

Возвращает обратную матрицу.  

Синтаксис

MINVERSE (array)

array – это массив значений (матрица).



Примечания 

  • Матрица array должна быть квадратной;

  • Если матрица вырождена, то выводится символ ошибки #VALUE!.

Пример  

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

2.6. Бинарные операции


К матрицам можно применять следующие бинарные операции.

MMULT / МУМНОЖ

Возвращает произведение двух матриц.

Синтаксис

MMULT (array1array2)

array1array2 – перемножаемые матрицы.

Примечания 

  • Число столбцов в матрице array1 должно быть равно числу строк в матрицу array2, иначе выводится символ ошибки #VALUE!;

  • В получаемом массиве должно быть не более 5461 элементов (Excel 2003). 

Пример

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

Для построения регрессионных зависимостей используются несколько стандартных функций листа.

TREND / ТЕНДЕНЦИЯ

Строит линейную регрессию

y=b+m1 x1+…+mJ xJ+e

Аппроксимирует известные значения вектора откликовknown_y's для заданных значений матрицы предикторов known_x's и возвращает значения y, для заданного массива new_x's.  

Синтаксис 

TREND(known_y's [,known_x's] [,new_x's] [,const])

known_y's – вектор известных значений откликов y (калибровочный набор); 

known_x's – необязательный аргумент. Матрица известных значений предикторов X (калибровочный набор); 

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

const – необязательный аргумент. Логическое значение, которое указывает, требуется ли, чтобы параметр b был равен нулю. Если const имеет значение TRUE или опущено, то b вычисляется обычным образом, иначе b=0.

Примечания 

  • Вектор known_y's должен занимать один столбец, тогда каждый столбец матрицы массива known_x's интерпретируется как отдельная переменная;

  • Если аргумент known_x's опущен, то предполагается, что это вектор чисел {1;2;3;...} такого же размера, как и known_y's;

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

  • Если аргумент new_x's опущен, то предполагается, что он совпадает с массивом known_x's. Результат является вектором, в котором число строк равно числу строк в массиве new_x's.


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

LINEST / ЛИНЕЙН

Дополняет функцию TREND и выводит некоторые статистические значения, связанные с регрессией  

y=b+m1 x1+…+mJ xJ+e

Синтаксис 

LINEST(known_y's [,known_x's] [,new_x's] [,const] [,stats])

known_y's – вектор известных значений откликов y (калибровочный набор); 

known_x's – необязательный аргумент. Матрица известных значений предикторов X (калибровочный набор); 

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

const – необязательный аргумент. Логическое значение, которое указывает, требуется ли, чтобы параметр b был равен нулю. Если const имеет значение TRUE или опущено, то b вычисляется обычным образом, иначе b=0; 

stats – необязательный аргумент. Логическое значение, которое указывает, нужно ли выводить дополнительные статистические значения. Если stats имеет значение FALSE или опущено, то выводятся только оценки коэффициентов mJ, …, m2m1 и b . Иначе выводится целая таблица 

mJ, …, m2m1 и b – оценки регрессионных коэффициентов;

sJ, …, s2s1 и sb – стандартные ошибки для оценок регрессионных коэффициентов;

R2 – коэффициент детерминации;

sy – стандартная ошибка оценки y;

F – F-статистика;

DoF – число степеней свободы;

SSreg – регрессионная сумма квадратов;

SSres – остаточная сумма квадратов.

Примечания 

  • LINEST – это очень плохо сконструированная функция, очень неудобная в практическом применении;

  • Примечания, представленные в описании функции TREND полностью применимы к функции LINEST.

Пример   

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

2.9. Виртуальный массив


При анализе данных часто возникает проблема сохранения промежуточных результатов, которые нужны не сами по себе, а только для того, чтобы вычислить по ним другие, полезные значения. Например, остатки в методе PCA часто нам не интересны, а нужны только для определения полной объясненной дисперсии, ортогональных расстояний и т.п. При этом размеры таких промежуточных массивов могут быть очень велики, да и к тому же их приходится вычислять при различных значениях числа главных компонент. Все это ведет к заполнению рабочей книги большим количеством ненужных, промежуточных результатов. Этого можно избежать, если использовать виртуальные массивы. Поясним их суть на простом примере. 


Предположим, что задана матрица A, а нужно вычислить детерминант матрицы AtA . На Рис. 38 показаны два способа вычисления. Первый – через последовательность промежуточных массивов, отмеченных красными стрелками. Второй – с помощью одной формулы, показанной зеленой стрелкой. Оба пути ведут к одному и тому же результату, но красный путь занимает на листе много места, а зеленый последовательно использует несколько промежуточных виртуальных массивов. Все они, по сути, совпадают с реальными массивами красного пути, но на лист не выводятся.

Первый массив –  это транспонированная матрица At, получаемая как результат функции TRANSPOSE(A).

Второй виртуальный массив получается тогда, когда первый виртуальный массив умножается на матрицу A с помощью функции MMULT(TRANSPOSE(A), A).  

И, наконец, к этому, второму виртуальному массиву применяется функция MDETERM.

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

  1. Mathcad как специализированная среда для решения математических задач: обзор основных возможностей.

Основные возможности системы Mathcad:

  • описание задачи и ее решение в привычном с точки зрения математики виде;

  • богатый набор встроенных операторов и функций, реализующих разнообразные численные методы решения типовых уравнений и систем;

  • выполнение операций в символьном виде (вычисление интегралов и производных в аналитической форме, вывод формул для корней уравнений и пр.);

  • наличие средств для высококачественного оформления документов (близких к программе MS Word);

  • импорт объектов разного типа для создания иллюстрированных материалов;

  • интуитивно понятный интерфейс для работы с программным пакетом.



  1. Mathcad. Структура рабочего листа. Типовые блоки и их создание. Привести примеры.

Документ системы Mathcad называют рабочим листом (WorkSheet), и он создается или изменяется в окне редактирования, которое доступно сразу после загрузки программы. Окно редактирования содержит два объекта: курсор в виде красного крестика, определяющего позицию ввода новых компонентов документа, и вертикальную прерывистую черту – границу страницы.

Перемещение курсора производится стрелками на клавиатуре или щелчком мыши в области окна редактирования. Изменить ориентацию и поля страницы можно через пункт меню Файл – Настройка страницы.