Записи с меткой «сигналов»

Сглаживание данных — DataSmoothing

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

  • MovingAverage [data, r] — сглаживание данных data методом усреднения для г точек;
  • MovingMedian [data, r] — сглаживание данных data по медиане для г точек (опция RepeatedSmoothing->True используется для повторного сглаживания);
  • LinearFilter [data, {c0, cl,…, сr-1} ] — линейная фильтрация (сj— весовые множители);
  • ExponentialSmoothing [data, a] — экспоненциальное (нелинейное) сглаживание, параметр а задает степень сглаживания.

Ниже представлены результаты сглаживания символьных данных, выявляющие соотношения, используемые при сглаживании:
ds : = {xl, х2 , хЗ , х4 , х5}
MovingAverage[ds,3]
{1/3* (xl + x2 + x3), — (х2 + хЗ + х4), — (хЗ + х4 + х5)}
MovingMedian[ds,3]
{х2, хЗ, х4}
ExponentialSmoothing[ds, 0.2]
{xl, xl + 0.2 (-xl + x2) , xl+0.2 (-xl + x2) +0.2 (-xl-0.2 (-xl + x2) + x3) , xl+0.2(-xl+x2)+0.2 (-xl-0.2 (-xl + x2) +x3) +
0.2 (-xl-0.2 (-xl+x2) — 0.2 (-xl- 0.2 (-xl + x2) + x3) + x4) , xl+0.2(-xl + x2) +0.2(-xl-0.2(-xl + x2) +x3) + 0.2 (-xl- 0.2 (-xl+x2) -0.2(-xl-0.2(-xl + x2) + x3) + x4) + 0.2 (-xl- 0.2 (-xl+x2) — 0.2 (-xl- 0.2 (-xl+x2) + x3) —
0.2 (-xl-0.2 (-xl+x2) -0.2 (-xl-0.2 (-xl + x2) + x3) + x4) + x5)}
Применение сглаживания усреднением иллюстрирует. На нем задан массив (таблица) из 500 случайных точек с равномерным распределением и создан графический объект из этих точек в виде кружков малого диаметра. далее…