Bugsp.ru

Ваша компьютерная помощь
66 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Аппроксимация в Excel: 5 простых способов

Аппроксимация в Excel

График аппроксимации функции двух переменных(Обратите внимание на дополнительный раздел от 04.06.2017 в конце статьи.)

Учет и контроль! Те, кому за 40 должны хорошо помнить этот лозунг из эпохи построения социализма и коммунизма в нашей стране.

Но без хорошо налаженного учета невозможно эффективное функционирование ни страны, ни области, ни предприятия, ни домашнего хозяйства при любой общественно-экономической формации общества! Для составления прогнозов и планов деятельности и развития необходимы исходные данные. Где их брать? Только один достоверный источник – это ваши статистические учетные данные предыдущих периодов времени.

Учитывать результаты своей деятельности, собирать и записывать информацию, обрабатывать и анализировать данные, применять результаты анализа для принятия правильных решений в будущем должен, в моем понимании, каждый здравомыслящий человек. Это есть ничто иное, как накопление и рациональное использование своего жизненного опыта. Если не вести учет важных данных, то вы через определенный период времени их забудете и, начав заниматься этими вопросами вновь, вы опять наделаете те же ошибки, что делали, когда впервые этим занимались.

«Мы, помню, 5 лет назад изготавливали до 1000 штук таких изделий в месяц, а сейчас и 700 еле-еле собираем!». Открываем статистику и видим, что 5 лет назад и 500 штук не изготавливали…

«Во сколько обходится километр пробега твоего автомобиля с учетом всех затрат?» Открываем статистику – 6 руб./км. Поездка на работу – 107 рублей. Дешевле, чем на такси (180 рублей) более чем в полтора раза. А бывали времена, когда на такси было дешевле…

«Сколько времени требуется для изготовления металлоконструкций уголковой башни связи высотой 50 м?» Открываем статистику – и через 5 минут готов ответ…

«Сколько будет стоить ремонт комнаты в квартире?» Поднимаем старые записи, делаем поправку на инфляцию за прошедшие годы, учитываем, что в прошлый раз купили материалы на 10% дешевле рыночной цены и – ориентировочную стоимость мы уже знаем…

Ведя учет своей профессиональной деятельности, вы всегда будете готовы ответить на вопрос начальника: «Когда. ». Ведя учет домашнего хозяйства, легче спланировать расходы на крупные покупки, отдых и прочие расходы в будущем, приняв соответствующие меры по дополнительному заработку или по сокращению необязательных расходов сегодня.

В этой статье я на простом примере покажу, как можно обрабатывать собранные статистические данные в Excel для возможности дальнейшего использования при прогнозировании будущих периодов.

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

Производственный участок изготавливает строительные металлоконструкции из листового и профильного металлопроката. Участок работает стабильно, заказы однотипные, численность рабочих колеблется незначительно. Есть данные о выпуске продукции за предыдущие 12 месяцев и о количестве переработанного в эти периоды времени металлопроката по группам: листы, двутавры, швеллеры, уголки, трубы круглые, профили прямоугольного сечения, круглый прокат. После предварительного анализа исходных данных возникло предположение, что суммарный месячный выпуск металлоконструкций существенно зависит от количества уголков в заказах. Проверим это предположение.

Прежде всего, несколько слов об аппроксимации. Мы будем искать закон – аналитическую функцию, то есть функцию, заданную уравнением, которое лучше других описывает зависимость общего выпуска металлоконструкций от количества уголкового проката в выполненных заказах. Это и есть аппроксимация, а найденное уравнение называется аппроксимирующей функцией для исходной функции, заданной в виде таблицы.

1. Включаем Excel и помещаем на лист таблицу с данными статистики.

Таблица Excel со статистическими данными.

2. Далее строим и форматируем точечную диаграмму, в которой по оси X задаем значения аргумента – количество переработанных уголков в тоннах. По оси Y откладываем значения исходной функции – общий выпуск металлоконструкций в месяц, заданные таблицей.

Читайте так же:
Скачать WebZIP последнюю версию

Зависимость общего выпуска металлоконструкций от количества переработанных уголков

О том, как построить подобную диаграмму, подробно рассказано в статье «Как строить графики в Excel?».

3. «Наводим» мышь на любую из точек на графике и щелчком правой кнопки вызываем контекстное меню (как говорит один мой хороший товарищ — работая в незнакомой программе, когда не знаешь, что делать, чаще щелкай правой кнопкой мыши…). В выпавшем меню выбираем «Добавить линию тренда…».

4. В появившемся окне «Линия тренда» на вкладке «Тип» выбираем «Линейная».

Окно MS Excel "Линия тренда" вкладка "Тип"

5. Далее на вкладке «Параметры» ставим 2 галочки и нажимаем «ОК».

Окно MS Excel "Линия тренда" вкладка "Параметры"

6. На графике появилась прямая линия, аппроксимирующая нашу табличную зависимость.

Аппроксимация табличной зависимости прямой линией

Мы видим кроме самой линии уравнение этой линии и, главное, мы видим значение параметра R 2 – величины достоверности аппроксимации! Чем ближе его значение к 1, тем наиболее точно выбранная функция аппроксимирует табличные данные!

7. Строим линии тренда, используя степенную, логарифмическую, экспоненциальную и полиномиальную аппроксимации по аналогии с тем, как мы строили линейную линию тренда.

Линейная, степенная, логарифмическая, экспоненциальная и полиномиальная аппроксимации

Лучше всех из выбранных функций аппроксимирует наши данные полином второй степени, у него максимальный коэффициент достоверности R 2 .

Однако хочу вас предостеречь! Если вы возьмете полиномы более высоких степеней, то, возможно, получите еще лучшие результаты, но кривые будут иметь замысловатый вид…. Здесь важно понимать, что мы ищем функцию, которая имеет физический смысл. Что это означает? Это означает, что нам нужна аппроксимирующая функция, которая будет выдавать адекватные результаты не только внутри рассматриваемого диапазона значений X, но и за его пределами, то есть ответит на вопрос: «Какой будет выпуск металлоконструкций при количестве переработанных за месяц уголков меньше 45 и больше 168 тонн!» Поэтому я не рекомендую увлекаться полиномами высоких степеней, да и параболу (полином второй степени) выбирать осторожно!

Итак, нам необходимо выбрать функцию, которая не только хорошо интерполирует табличные данные в пределах диапазона значений X=45…168, но и допускает адекватную экстраполяцию за пределами этого диапазона. Я выбираю в данном случае логарифмическую функцию, хотя можно выбрать и линейную, как наиболее простую. В рассматриваемом примере при выборе линейной аппроксимации в excel ошибки будут больше, чем при выборе логарифмической, но не на много.

8. Удаляем все линии тренда с поля диаграммы, кроме логарифмической функции. Для этого щелкаем правой кнопкой мыши по ненужным линиям и в выпавшем контекстном меню выбираем «Очистить».

9. В завершении добавим к точкам табличных данных планки погрешностей. Для этого правой кнопкой мыши щелкаем на любой из точек на графике и в контекстном меню выбираем «Формат рядов данных…» и настраиваем данные на вкладке «Y-погрешности» так, как на рисунке ниже.

Окно MS Excel "Формат ряда данных" вкладка "Y-погрешности"

10. Затем щелкаем по любой из линий диапазонов погрешностей правой кнопкой мыши, выбираем в контекстном меню «Формат полос погрешностей…» и в окне «Формат планок погрешностей» на вкладке «Вид» настраиваем цвет и толщину линий.

Окно MS Excel "Формат планок погрешностей" вкладка "Вид"

Аналогичным образом форматируются любые другие объекты диаграммы в Excel!

Окончательный результат диаграммы представлен на следующем снимке экрана.

Аппроксимация табличной зависимости логарифмической кривой

Итоги.

Результатом всех предыдущих действий стала полученная формула аппроксимирующей функции y=-172,01*ln (x)+1188,2. Зная ее, и количество уголков в месячном наборе работ, можно с высокой степенью вероятности (±4% — смотри планки погрешностей) спрогнозировать общий выпуск металлоконструкций за месяц! Например, если в плане на месяц 140 тонн уголков, то общий выпуск, скорее всего, при прочих равных составит 338±14 тонн.

Для повышения достоверности аппроксимации статистических данных должно быть много. Двенадцать пар значений – это маловато.

Читайте так же:
Гаджет для выключения компьютера на Windows 7

Из практики скажу, что хорошим результатом следует считать нахождение аппроксимирующей функции с коэффициентом достоверности R 2 >0,87. Отличный результат – при R 2 >0,94.

На практике бывает трудно выделить один самый главный определяющий фактор (в нашем примере – масса переработанных за месяц уголков), но если постараться, то в каждой конкретной задаче его всегда можно найти! Конечно, общий выпуск продукции за месяц реально зависит от сотни факторов, для учета которых необходимы существенные трудозатраты нормировщиков и других специалистов. Только результат все равно будет приблизительным! Так стоит ли нести затраты, если есть гораздо более дешевое математическое моделирование!

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

Затронутый вопрос аппроксимации функции одной переменной имеет широкое практическое применение в разных сферах жизни. Но гораздо большее применение имеет решение задачи аппроксимации функции нескольких независимых переменных…. Об этом и не только читайте в следующих статьях на блоге.

Подписывайтесь на анонсы статей в окне, расположенном в конце каждой статьи или в окне вверху страницы.

Не забывайте подтверждать подписку кликом по ссылке в письме, которое придет к вам на указанную почту (может прийти в папку «Спам»).

С интересом прочту Ваши комментарии, уважаемые читатели! Пишите!

P.S. (04.06.2017)

Высокоточная красивая замена табличных данных простым уравнением.

Вас не устраивают полученные точность аппроксимации (R 2 <0,95) или вид и набор функций, предлагаемые MS Excel?

Размеры выражения и форма линии аппроксимирующего полинома высокой степени не радует глаз?

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

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

excel-ili-predlagaemaya-metodika

При использовании предлагаемого алгоритма действий найдена весьма компактная функция, обеспечивающая высочайшую точность аппроксимации: R 2 =0,9963.

Что такое аппроксимация в Excel?

Ведь аппроксимация является, по сути, упрощением исходных данных, а упрощенный вариант исследовать легче. Главный инструмент, с помощью которого проводится сглаживания в Excel – это построение линии тренда. Суть состоит в том, что на основе уже имеющихся показателей достраивается график функции на будущие периоды.

Как посчитать аппроксимацию в Excel?

Аппроксимация в Excel

  1. Создайте диаграмму (график).
  2. Выделите линию функции на графике и нажмите правую кнопку мыши, выберите «Добавить линию тренда»
  3. Выберите тип аппроксимации во вкладке «Тип» в откурывшемся диалоговом окне «Линия тренда»
  4. На вкладке «Параметры» — прогностические параметры, показывать уравнение на графике или нет

Как называется в Excel график линейной аппроксимации?

Линия тренда в Excel – это график аппроксимирующей функции. Для чего он нужен – для составления прогнозов на основе статистических данных. С этой целью необходимо продлить линию и определить ее значения. Если R2 = 1, то ошибка аппроксимации равняется нулю.

Где находится линия тренда в Excel?

Щелкните правой кнопкой мыши по ряду данных и в контекстном меню нажмите Добавить линию тренда (Add Trendline). Перейдите на вкладку Параметры линии тренда (Trend/Regression Type) и выберите Линейная (Linear).

Как экстраполировать данные в Excel?

Выполнить процедуру экстраполяции для графика можно путем построения линии тренда. Прежде всего, строим сам график. Для этого курсором при зажатой левой кнопке мыши выделяем всю область таблицы, включая аргументы и соответствующие значения функции. Затем, переместившись во вкладку «Вставка», кликаем по кнопке «График».

Читайте так же:
Как найти драйвер для неизвестного устройства

Как использовать функцию Линейн в Excel?

Функция EXCEL ЛИНЕЙН()

  1. выделите 2 ячейки в одной строке,
  2. в Строке формул введите, например, = ЛИНЕЙН(C23:C83;B23:B83)
  3. нажмите CTRL + SHIFT + ENTER .

Как построить полином в Excel?

Полином — это степенная функция y=ax2+bx+c (полином второй степени) и y=ax3+bx2+cx+d (полином третей степени) и т.

Есть 3 способа расчета значений полинома в Excel:

  1. 1-й способ с помощью графика;
  2. 2-й способ с помощью функции Excel =ЛИНЕЙН;
  3. 3-й способ с помощью Forecast4AC PRO;

Как сделать аппроксимацию?

Чтобы приступить к аппроксимации кривой ваших экспериментальных данных в Excel 2003:

  1. Создайте диаграмму (график).
  2. Выделите линию функции на графике и нажмите правую кнопку мыши, выберите «Добавить линию тренда»
  3. Выберите тип аппроксимации во вкладке «Тип» в откурывшемся диалоговом окне «Линия тренда»

Как сделать уравнение по графику в Excel?

Кликаете правой кнопкой мыши на линии тренда, выбираете «Формат линии тренда». В открывшемся окне ставите галочку «Показывать уравнение на диаграмме».

Как в Excel сделать прогноз?

Выделите оба ряда данных. Совет: Если выделить ячейку в одном из рядов, Excel автоматически выделит остальные данные. На вкладке Данные в группе Прогноз нажмите кнопку Лист прогноза. В окне Создание прогноза выберите график или гограмму для визуального представления прогноза.

Что показывает уравнение линии тренда?

Уравнение Trendline — это формула, которая находит линию, которая наилучшим образом соответствует точкам данных. Значение R-squared измеряет надежность трендовой линии : чем ближе R2 к 1, тем лучше линия тренда соответствует данным.

Для чего служит линия тренда?

Линии тренда — элемент аппарата технического анализа, используемый для выявления тенденций изменения цен на различных видах бирж. Линии тренда представляют собой геометрическое отображение средних значений анализируемых показателей, полученное с помощью какой-либо математической функции.

Как считается линия тренда?

Уравнение линейного тренда y=ax+b, где y — это объёмы продаж, а x — месяцы.

Как рассчитать прогноз?

Рассчитать прогноз по методу скользящей средней очень просто. Для этого берём среднее значение, например, средние продажи за последние 3 месяца и умножаем на коэффициент сезонности к 3-м месяцам — и прогноз на месяц готов.

Как сделать интерполяцию функции в Excel?

Выделите диапазон A1:B4 и выберите инструмент: «Вставка»-«Диаграммы»-«График»-«График с маркерами». Чтобы устранить обрывы на графике, то есть выполнить интерполяцию в Excel, можем использовать 2 решения для данной задачи: Изменить параметры в настройках графика выбрав соответствующую опцию.

Что такое метод экстраполяции?

Экстраполяция — это метод научного исследования, который основан на распространении прошлых и настоящих тенденций, закономерностей, связей на будущее развитие объекта прогнозирования. Методы экстраполяции наиболее распространенные в группе формализованных.

Электронная библиотека

Аппроксимацией (приближением) функции называется нахождение такой функции (аппроксимирующей функции), которая была бы близка заданной. Критерии близости функций и могут быть различные.

Основная задача аппроксимации — построение приближенной (аппроксимирующей) функции, в целом наиболее близко проходящей около данных точек или около данной непрерывной функции. Такая задача возникает при наличии погрешности в исходных данных (в этом случае нецелесообразно проводить функцию точно через все точки, как в интерполяций) или при желании получить упрощенное математическое описание сложной или неизвестной зависимости.

Электронная библиотека

Рис. 3.6 Метод Лагранжа

Близость исходной и аппроксимирующей функций определяется числовой мерой

— критерием аппроксимации (близости). Наибольшее распространение получил квадратичный критерий, равный сумме квадратов отклонений расчетных значений от «экспериментальных» (т.е. заданных), — критерий близости в заданных точках:

Читайте так же:
Как настроить почтовый сервер в Linux

Здесь уi — заданные табличные значения функции; уiрасч — расчетные значения по аппроксимирующей функции; bi — весовые коэффициенты, учитывающие относительную важность i-и точки (увеличение b,. приводит при стремлении уменьшить R к уменьшению, прежде всего отклонения в i-й точке, так как это отклонение искусственно увеличено за счет относительно большого значения весового коэффициента).

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

Другим распространенным критерием близости является следующий:

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

Выделяют две основные задачи:

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

2) получение аппроксимирующей функции заданной структуры с наилучшей возможной погрешностью.

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

Метод наименьших квадратов

Метод базируется на применении в качестве критерия близости суммы квадратов отклонений заданных и расчетных значений. При заданной структуре аппроксимирующей функции уiрасч(х) необходимо таким образом подобрать параметры этой функции, чтобы получить наименьшее значение критерия близости, т.е. наилучшую аппроксимацию. Рассмотрим путь нахождения этих параметров на примере полиномиальной функции одной переменной:

Запишем выражение критерия аппроксимации при bi =1 (i=1, 2,…, n) для полиномиального уiрасч (х):

Искомые переменные аj можно найти из необходимого условия минимума R по этим переменным, т.е. dR / dар = 0 (для р =0, 1,2,…,k). Продифференцируем по ар(р — текущий индекс):

После очевидных преобразований (сокращение на два, раскрытие скобок, изменение порядка суммирования) получим

Перепишем последние равенства

Получилась система n+1 уравнений с таким же количеством неизвестных аj, причем линейная относительно этих переменных. Эта система называется системой нормальных уравнений. Из ее решения находятся параметры аj аппроксимирующей функции, обеспечивающие minR, т.е. наилучшее возможное квадратичное приближение. Зная коэффициенты, можно (если нужно) вычислить и величину R (например, для сравнения различных аппроксимирующих функций). Следует помнить, что при изменении даже одного значения исходных данных (или пары значений хi, уi, или одного из них) все коэффициенты изменят в общем случае свои значения, так как они полностью определяются исходными данными. Поэтому при повторении аппроксимации с несколько изменившимися данными (например, вследствие погрешностей измерения, помех, влияния неучтенных факторов и т.п.) получится другая аппроксимирующая функция, отличающаяся коэффициентами. Обратим внимание на то, что коэффициенты аj полинома находятся из решения системы уравнений, т.е. они связаны между собой. Это приводит к тому, что если какой-то коэффициент вследствие его малости захочется отбросить, придется пересчитывать заново оставшиеся. Можно рассчитать количественные оценки тесноты связи коэффициентов. Существует специальная теория планирования экспериментов, которая

позволяет обосновать и рассчитать значения хi, используемые для аппроксимации, чтобы получить заданные свойства коэффициентов (несвязанность, минимальная дисперсия коэффициентов и т.д.) или аппроксимирующей функции (равная точность описания реальной зависимости в различных направлениях, минимальная дисперсия предсказания значения функции и т.д.).

Рис. 3.7 Влияние степени аппроксимирующего полинома М на точность аппроксимации

В случае постановки другой задачи — найти аппроксимирующую функцию, обеспечивающую погрешность не хуже заданной, — необходимо подбирать и структуру этой функции. Эта задача значительно сложнее предыдущей (найти параметры аппроксимирующей функции заданной структуры, обеспечивающей наилучшую возможную погрешность) и решается в основном путем перебора различных функций и сравнения получающихся мер близости. Для примера на рис. 3.7 приведены для визуального сравнения исходная и аппроксимирующие функции с различной степенью полинома, т.е. функции с различной структурой. Не следует забывать, что с повышением точности аппроксимации растет и сложность функции (при полиномиальных аппроксимирующих функциях), что делает ее менее удобной при использовании.

Читайте так же:
Как открыть крышку телефона Самсунг

Рассмотрим решение задачи аппроксимации и интерполяции с шумом в

программе MathCAD (рисунок 3.8).

Пример 3.1. В ходе проведения эксперимента были получены данные, представленные в таблице 3.1. Необходимо способом наименьших квадратов подобрать для заданных значений x и y квадратичную функцию . Построить на одной координатной плоскости экспериментальные данные и аппроксимирующую функцию.

МНК: Приближение полиномом в EXCEL

Метод наименьших квадратов (МНК) основан на минимизации суммы квадратов отклонений выбранной функции от исследуемых данных. В этой статье аппроксимируем имеющиеся данные с помощью полинома (до 6-й степени включительно).

В основной статье про МНК было рассмотрено приближение линейной функцией. В этой статье рассмотрим приближение полиномиальной функцией (с 3-й до 6-й степени) следующего вида: y=b +b 1 x+b 2 x 2 +b 3 x 3 +…+b 6 x 6

Примечание : В инструменте MS EXCEL Линия тренда , который доступен для диаграмм типа Точечная и График , можно построить линию тренда на основе полинома с максимальной степенью 6. В файле примера продемонстрировано полное совпадение линии тренда диаграммы и линии, вычисленной с помощью формул.

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

Как известно, квадратичная зависимость y=b +b 1 x+b 2 x 2 , подробно рассмотренная в статье МНК: Квадратичная зависимость в MS EXCEL , является частным случаем полиномиальной y=b +b 1 x+b 2 x 2 +b 3 x 3 +… зависимости (в этом случае степень полинома равна 2). Соответственно, используя тот же подход (приравнивание к 0 частных производных), можно вычислить коэффициенты любого полинома.

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

Для нахождения m+1 коэффициента полинома m-й степени составим систему из m+1 уравнения и решим ее методом обратной матрицы . Для квадратного уравнения (m=2) нам потребовалось вычислить сумму значений х с 1-й до 4-й степени, а для полинома m-й степени необходимо вычислить значения х с 1-й до 2*m степени.

Примечание : Для удобства суммы степеней значений х можно вычислить в отдельном диапазоне ( файл примера столбцы К:М).

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

Выбрав с помощью элемента управления Счетчик нужную степень полинома, автоматически получим аппроксимацию наших данных выбранным полиномом (будет построен соответствующий график).

Примечание: При использовании полиномов высокой степени необходимо следить за тем, чтобы количество пар значений (х i ; y i ) превышало степень полинома хотя бы на несколько значений (для обеспечения точности аппроксимации). Кроме того, график функции полинома степени m имеет m-1 точку перегиба. Понятно, что точек данных должно быть гораздо больше, чем точек перегиба, чтобы такой изменчивый тренд стал очевидным (если утрировать, то бессмысленно строить по двум точкам параболу, логичнее построить прямую).

Как видно из расчетов, в MS EXCEL этот путь является достаточно трудоемким. Гораздо проще в MS EXCEL реализовать другой подход для вычисления коэффициентов полинома — с помощью замены переменных.

С помощью замены переменных x i =x i полиномиальную зависимость y=b +b 1 x+b 2 x 2 +b 3 x 3 +… можно свести к линейной. Теперь переменная y зависит не от одной переменной х в m разных степенях, а от m независимых переменных x i . Поэтому для нахождения коэффициентов полинома мы можем использовать функцию ЛИНЕЙН() . Этот подход также продемонстрирован в файле примера .

голоса
Рейтинг статьи
Ссылка на основную публикацию