Анализ Mathcad. 1. Основы статистического анализа данных средствами Mathcad 3
Скачать 334.19 Kb.
|
Содержание Введение 3 1. Основы статистического анализа данных средствами MathCAD 3 1.1 Первичная обработка данных 3 1.2 Среднее значение случайной величины 5 1.3 Выполнение регрессии разного вида 5 1.4 Функции сглаживания и предсказания 9 2 .Генерация случайного процесса равномерного и нормального распределения по заданным характеристикам в пакете EXCEL 13 Заключение 21 Список литературы 22 ВВЕДЕНИЕ В последние годы для про ведения различного рода расчетов на компьютере все чаще используются нетрадиционные языки программирования. Mathcad – позволяет специалистам в конкретной предметной области, не вдаваясь в тонкости программирования, реализовать математические модели. Отметим конкретные преимущества пакета Mathcad: математические выражения в среде Mathcad записываются в их общепринятом виде. Текстовый процессор пакета позволяет оформить, на прим ер, научную статью , не прибегая к специализированным средствам (текстовые процессоры Word, LaTeX и др.). Кроме того, пакет Mathcad — это полноценное Windows - приложение, поэтому ClipBoard (Буфер Обменов) позволяет перенести фрагменты Mathcad - документа в Word - документ и при необходимости дооформить их; в среде Mathcad процесс создания программы идет параллельно с отладкой; в пакет Mathcad интегрирован довольно мощный математический аппарат, позволяющий решать математические задачи без вызова внешних процедур. пакет Mathcad дополнен справочником по основным математическим и физико -химическим формулам и константам, которые можно автоматически переносить в документ ; в пакет Mathcad интегрированы средства символьной математики, что дает возможность решать математические задачи не только численно, но и аналитически; система Mathcad оборудована средствами анимации, что позволяет реализовывать созданные модели не только в статике (числа, таблицы), но и в динамике (анимационные клипы). [2] 1 ОСНОВЫ СТАТИСТИЧЕСКОГО АНАЛИЗА ДАННЫХ СРЕДСТВАМИ MATHCAD РАБОТА СО СПИСКАМИ В EXCEL После того как данные были введены в документ MathCAD тем или иным способом, можно приступать к их статистическому анализу. Конечно, все необходимые величины можно вычислить и используя обычные средства MathCAD, но основные инструменты такого анализа можно найти в MathCAD в виде встроенных функций. Рассмотрим все этапы статистического анализа массива случайных данных и, конечно, функции MathCAD, которые при этом используются. Все функции, предназначенные для статистической обработки данных, можно найти в библиотеке функции MathCAD в категории Statistics. 1.1 Первичная обработка данных Первичная обработка данных состоит в отыскании максимального и минимального элементов в наборе и медианы, т.е. такого элемента, для которого количество больших него элементов в наборе равно количеству меньших. Для этих целей служат следующие функции MathCAD. min (A,B,…) – минимальное значение из набора данных. Набор данных для анализа может быть представлен как в виде вектора, так и в виде матрицы или даже нескольких матриц. В последнем случае их нужно указывать в аргументе функции min через запятую. max (A,B,…) – максимальное значение из набора. Для этой и следующей функций возможны все те же варианты представления данных, что и для функции min. median (A,B,…) – возвращает медиану набора данных. Если в наборе честное количество значений, то будет возвращено среднее арифметическое двух центральных значений. [1] 1.2 Средние значения случайной величины Основной числовой характеристикой любого набора случайных данных является среднее значение. Существуют различные определения среднего значения, и все они находят применение на практике. Система MathCAD содержит функции для вычисления средних значений трех типов. Аргументами этих функций может быть как вектор, так и матрица или набор матриц. В любом случае элементы всех матриц будут рассматриваться как единый массив данных М. [8] 1.3 Выполнение регрессии различного вида Результаты экспериментов всегда содержат некоторую случайную погрешность. Причем часто погрешность оказывается величиной одного порядка с измеряемой величиной. В таких случаях интерполяционная кривая будет весьма далека от истинной зависимости. Поскольку подобные ситуации возникают довольно часто, то интерполяция редко используется при анализе результатов экспериментов. Гораздо шире здесь применяется регрессионный анализ. Регрессией называется подгон параметров той или иной простой функции для наилучшей аппроксимации экспериментальных данных (от латинского approximo - приближаюсь). Если аппроксимирующая функция выбрана удачно, то значения ее параметров могут быть источником разнообразной информации об измеряемой величине. Система MathCad содержит большое количество встроенных функций для проведения регрессионного анализа с использованием любых аппроксимирующих функций и их комбинаций. Все функции MathCad для поиска оптимальных значений параметров функций используют метод наименьших квадратов, можно еще применить метод медиан. Линейная регрессия является наиболее простой, но, тем не менее, используется чаще любого другого вида регрессии. Она заключается в нахождении таких значений параметров a и b, чтобы прямая y = a+bx наилучшим образом аппроксимировала заданной набор точек. Для проведения линейной регрессии по методу наименьших квадратов в MathCad существует функция line(vx,vy). Результатом функции line будет вектор, содержащий значения параметров a и b для построения регрессионной прямой. Пример линейной регрессии представлен на рис.1 Рис.1 Линейная регрессия с помощью функции line На рис.1 для анализа эффективности линейной регрессии построена псевдоэкспериментальная последовательность точек. Для этого к точным значениям линейной функции прибавлены случайные числа, сгенерированные с помощью функции rnorm. Затем проведена линейная регрессия полученного набора точек. Ее результат можно сравнить с исходной прямой. Как видно из рис., параметры регрессионной прямой заметно отличаются от исходных, но на графике обе прямые проходят достаточно близко. Для линейной регрессии в MathCad реализован также метод медиан с помощью функции medfit(vx,vy). Результатом этой функции является вектор, аналогичный результату line. Нельзя утверждать, что один из двух методов регрессии более точен. Метод наименьших квадратов является наиболее универсальным, поэтому функция line считается в MathCad основной функцией для проведения линейной регрессии. [7] Полиномиальная регрессия. Кроме аппроксимации неизвестной функции с помощью прямой, широкое применение находит и аппроксимация с помощью полиномов различной степени. Для этой цели в MathCad существует функция regress(vx,vy,n). Последний аргумент данной функции задает степень полинома. Можно использовать полином любой степени, но не большей, чем число точек в выборке минус один. При n = 1 получится линейная регрессия. На практике наибольшее применение находит полиномиальная регрессия от второй до пятой степени. Результатом функции regress является вектор, содержащий коэффициенты аппроксимирующего полинома. Эти коэффициенты располагаются в векторе, начиная с четвертого элемента в порядке возрастания степеней. Первые три элемента данного вектора являются служебными и используются для того, чтобы результат функции regress можно было использовать как первый аргумент функции interp по аналогии со сплайн-интерполяцией. Пример полиномиальной регрессии представлен на рис.2. На рис.2 для иллюстрации полиномиальной регрессии построена псевдоэкспериментальная последовательность точек. В качестве теоретической функции был использован полином третьей степени с коэффициентами 0,1,-2,1. Как видно из примера, коэффициенты, рассчитанные функцией regress, значительно отличаются от коэффициентов исходного полинома. Тем не менее в области экспериментальных точек обе кривые достаточно близки, но за пределами этой области резко расходятся. Рис.10 Полиномиальная регрессия Физические величины зачастую подчиняются зависимостям отличным от линейных или полиномиальных. Поэтому в MathCad существует несколько функций, позволяющих выполнить регрессию с использованием зависимостей, наиболее часто встречающихся на практике. Таких функций в MathCad всего шесть. Вот некоторые из них: · expfit(vx,vy,vg) - регрессия экспоненциальной функцией y = a*eb*x+c. · sinfit(vx,vy,vg) - регрессия синусоидальной функцией y = a*sin(x+b)+c. · pwrfit(vx,vy,vg) - регрессия степенной функцией e = a*xb +c. [7] Перечисленные функции используют трехпараметрическую аппроксимирующую функцию, нелинейную по параметрам. При вычислении оптимальных значений трех параметров регрессионной функции по методу наименьших квадратов возникает необходимость в решении сложной системы из трех нелинейных уравнений. Такая система часто может иметь несколько решений. Поэтому в функциях MathCad, которые проводят регрессию трехпараметрическими зависимостями, введен дополнительный аргумент vg. Данный аргумент - это трехкомпонентный вектор, содержащий приблизительные значения параметров a,b и c, входящих в аппроксимирующую функцию. Неправильный выбор элементов вектора vg может привести к неудовлетворительному результату регрессии. На рис.11 приведен пример проведения экспоненциальной регрессии с помощью функции expfit, регрессия проведена для двух различных значений вектора vg. Рис. 3 Экспоненциальная регрессия 1.4 Функции сглаживания и предсказания Система MathCad применяется для обработки различного рода сигналов. При этом очень важной процедурой является очистка сигнала от шумов. Один из вариантов решения данной задачи - это использование алгоритмов сглаживания (smoothig). Существует множество алгоритмов сглаживания данных, причем не всегда можно заранее сказать, какой из них будет наиболее эффективен для той или иной задачи. В MathCad реализовано три алгоритма сглаживания и соответственно существует три функции для их выполнения. medsmooth(vy,n) - реализует алгоритм «бегущих» медиан. Параметр n определяет ширину «окна» сглаживания, т.е. количество точек, которые используются при вычислении сглаженного значения в каждой точке. Параметр n должен быть целым нечетным числом. Данный алгоритм лучше всего подходит для сглаживания наборов точек, в которых лишь некоторые точки резко выбиваются из общей гладкой последовательности (см.рис.4). ksmooth(vx,vy,b) - алгоритм Гауссового ядра. В данном алгоритме сглаженное значение в каждой точке вычисляется как весовое среднее от всего набора данных с ядром в виде функции Гаусса. Параметр b - это параметр ширины функции ядра. Данный метод наилучшим образом подходит для фильтрации зашумленного сигнала (см.рис.5). supsmooth(vx,vy) - в данном алгоритме значение в каждой точке заменятся на значение регрессионной прямой, построенной с использованием некоторого количества близлежащих точек, причем данное количество выбирается по-разному для каждой точки с помощью адаптивного алгоритма. Рис.4 Сглаживание сигнала с узкими нерегулярностями Рис.5 Сглаживание зашумленного сигнала Функции интерполяции, описанные в этом разделе до сих пор, позволяют по заданным значениям некоторой функции в ряде точек оценить её значения в промежуточных точках. Иногда необходимо оценить значения функции в точках, находящихся вне области расположения сетки, на которой заданы значения функции. В Mathcad есть функция predict, которая позволяет это сделать. Эта функция использует линейный алгоритм предсказания, который является полезным, когда экстраполируемая функция является гладкой и осциллирующей, хотя не обязательно периодической. Линейное предсказание можно рассматривать как разновидность экстрaполяции, но его нельзя путать с линейной или полиномиальной экстрaполяцией. Функция predict (v, m, n) возвращает n предсказанных значений, основанных на m последовательных значениях вектора данных v. Элементы в v должны представлять собой значения, взятые через равные интервалы. Функция predict использует последние m исходных значений данных, чтобы вычислить коэффициенты предсказания. Как только это сделано, она использует последние m точек, чтобы предсказать координаты (m+1)-ой точки, фактически создавая скользящее окно шириной в m точек. [8] Рис. 6 Использование функции предсказания для экстраполяции данных. 2 ГЕНЕРАЦИЯ СЛУЧАЙНОГО ПРОЦЕССА РАВНОМЕРНОГО И НОРМАЛЬНОГО РАСПРЕДЕЛЕНИЯ ПО ЗАДАННЫМ ХАРАКТЕРИСТИКАМ В ПАКЕТЕ EXCEL 1. В электронных таблицах Excel создать таблицу 1 для генерации двух случайных процессов. Таблица 1
2. В первый столбец (ячейки А4:А104) заносятся номера строк по порядку (от 0 до 100). 3. Во втором столбце генерируется случайный процесс с равномерным распределением в диапазоне [а,в]. - Генерация производится путем использования встроенных функций Excel - Данные/Анализ данных/Генерация случайных чисел (рисунок 5). - Далее нажимается «ОК» - В диалоговом окне «Генерация случайных чисел» вводятся данные: - Число переменных – 1. - Число случайных чисел – 100. - Распределение – равномерное - параметры от а до b (а=0 , в=к*10 , где к – количество букв в фамилии –- к=8, в=80). - Выходной интервал – указываются координаты столбца 2 таблицы. - Далее нажимается «ОК» (рисунок 6) Рисунок 5 - Диалоговое окно «Анализ данных» Рисунок 6 - Диалоговое окно «Генерация случайных чисел» равномерное распределение. 4. Во втором столбце выводится случайный процесс с заданными параметрами. 5. В третьем столбце генерируется нормальный случайный процесс N(x,s), где x – среднее значение случайной величины, s- среднее квадратичное отклонение случайной величины. В диалоговом окне «Генерация случайных чисел» вводятся данные: - Число переменных – 1. - Число случайных чисел – 101. - Распределение – нормальное, - среднее значение x( x =10*m; m - количество букв в имени студента – 8, х=80). - стандартное отклонение s (s = n; n - количество букв в имени студента – 8, s=8). - Выходной интервал – указываются координаты столбца 3 подготовленной таблицы. - Далее нажимается «ОК» Рисунок 7 - Диалоговое окно «Генерация случайных чисел» нормальное распределение В третьем столбце выводится случайный процесс с заданными параметрами. Получилась таблица следующего вида: Таблица 2
6. Для каждого случайного процесса строятся графики (рис.8-9). Рисунок 8 – График равномерного случайного процесса Рисунок 9 – График нормального случайного процесса 7. Построение графиков дифференциальной и интегральной функций распределения для сгенерированных случайных процессов. Для расчета и построения графиков гистограмм используются встроенные функции: Данные/Анализ данных/Гистограмма. В диалоговом окне «Гистограмма» вводятся данные: - Входной интервал – указывается столбец с данными исследуемого случайного процесса. - Интервал карманов (диапазоны изменения случайной величины при построении гистограммы). Рядом с таблицей (через один столбец) укажите границы диапазонов. Для этого по графику случайного процесса оцените максимальное и минимальное значения и весь диапазон разбейте на 8-16 диапазонов. Границы выбираются удобные для анализа. (Excel по умолчанию сам может назначить границы, но они получаются дробные и не очень удобные для анализа). По графику случайного процесса определите минимальное и максимальное значения (0 и 60). Разбиваем диапазон, например на 6 диапазонов, т.е. введите в блок ячеек E4:E10 числа от 0 до 60 с шагом 10. - Выходной интервал – указывается адрес одной ячейки, начиная с которой Excel выводит таблицу и графики функций распределения. Указывается ячейка справа от шапки введенных карманов. - Ставятся флажки вывода интегральной функции – интегральный процент и вывод графика. - Проводится анализ полученных результатов и подготовка выводов. Рисунок 10 – Гистограмма процесса равномерного распределения Рисунок 11 – Гистограмма процесса нормального распределения ЗАКЛЮЧЕНИЕ MathCAD - универсальный математический пакет, предназначенный для выполнения инженерных и научных расчетов. Основное преимущество пакета - естественный математический язык, на котором формируются решаемые задачи. Объединение текстового редактора с возможностью использования общепринятого математического языка позволяет пользователю получить готовый итоговый документ. Пакет обладает широкими графическими возможностями, расширяемыми от версии к версии. Практическое применение пакета существенно повышает эффективность интеллектуального труда. Основные достоинства MathCAD`a: Во-первых, это универсальность пакета MathCAD, который может быть использован для решения самых разнообразных инженерных, экономических, статистических и других научных задач. Во-вторых, программирование на общепринятом математическом языке позволяет преодолеть языковой барьер между машиной и пользователем. Потенциальные пользователи пакета - от студентов до академиков. И в-третьих, совместно применение текстового редактора, формульного транслятора и графического процессора позволяет пользователю в ходе вычислений получить готовый документ. СПИСОК ЛИТЕРАТУРЫ 1. Дьяконов, В.П. Mathcad 14: учебный курс / В. Дьяконов. – М.: СПб: Питер, 2016. – 624 c. 2. Каганов В.И. Компьютерные вычисления в средах Excel и Mathcad. – М.: Горячая линия - Телеком, 2017. – 741 c. 3. Теория вероятности и математическая статистика в примерах и задачах с применением EXCEL. / Г.В. Горелова, И.А. Кацко. – Ростов-на-Дону: Феникс, 2016. – 475 с. 4. Основы статистического анализа. Практикум по статистическим методам и исследованию операций с использованием пакетов STATISTIC и EXCEL. / Вуколов Э.А. Учебное пособие. – М.: ФОРУМ, 2018. – 464 с. 5. Поршнев, С. В. Численные методы на базе Mathcad / С.В. Поршнев, И.В. Беленкова. – М.: БХВ-Петербург, 2015. – 464 c. 6. Статистические вычисления в среде EXCEL. / Р. Вадзинский. Библиотека пользователя. – СПб.: Питер, 2018. – 608 с. 7. Штыков, В. В. MathCAD. Руководство по решению задач для начинающих / В.В. Штыков. – М.: Либроком, 2013. – 168 c. 8. Щепетов, А. Г. Автоматизация инженерных расчетов в среде Mathcad / А.Г. Щепетов. – М.: Стандартинформ, 2016. – 264 c. |