Скользящая средняя Numpy

Skol Zasaa Srednaa Numpy



Прежде чем начать нашу тему, давайте разберемся, что такое скользящая средняя. В статистике скользящее среднее — это метод расчета и анализа точек данных. Он вычисляет точки данных, создавая серию средних значений различных подмножеств из полного набора данных. Таким образом, скользящее среднее — это измерение, которое улавливает типичные изменения в информационных рядах с течением времени. Moving — один из самых гибких и часто используемых индикаторов технического анализа. Поскольку им так просто пользоваться, профессиональные инвесторы используют его как средство получения определенного набора данных в статистике. Мы также можем рассчитать скользящую среднюю за более короткий период, используя ее для дневных или минутных данных. Например: при определении 10-дневной скользящей средней, в нашем случае, мы просто суммируем цены закрытия любой из предыдущих десяти дней и разделить результат на десять. На следующий день мы также рассчитаем цену за последние десять дней, что означает, что мы не будем рассчитывать цену первого дня. Его скорее заменит наша вчерашняя цена. Данные меняются таким образом с каждым скользящим днем, по этой причине они известны как скользящее среднее. Цель скользящей средней состоит в том, чтобы определить начало тренда, затем проследить за его развитием, а также сообщить о его развороте, если он произойдет. Формула для расчета скользящего среднего: Ft = (Dt1+Dt2+Dt3…+Dtn)/n. Где Dt — спрос в период t, а Ft — прогноз во времени t.

Синтаксис:

Мы можем рассчитать скользящее среднее различными способами, а именно:

Способ 1:

NumPy. сперма ( )

Он возвращает сумму элементов в заданном массиве. Мы можем рассчитать скользящее среднее, разделив результат cumsum() на размер массива.







Способ 2:

NumPy. а также . средний ( )

Он имеет следующие параметры.



a: данные в форме массива, которые должны быть усреднены.



ось: ее тип данных — int, и это необязательный параметр.





вес: это также массив и необязательный параметр. Он может иметь ту же форму, что и 1-D форма. В случае одномерного массива он должен иметь равную длину с массивом «а».

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



Способ 3:

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

например свернуться ( а , в , Режим знак равно 'полный' )

В этом синтаксисе a — это первое входное измерение, а v — второе значение входного измерения. Mode — это необязательное значение, оно может быть полным, одинаковым и действительным.

Пример #01:

Теперь, чтобы больше объяснить о скользящей средней в Numpy, давайте приведем пример. В этом примере мы возьмем скользящее среднее массива с помощью функции свертки NumPy. Итак, мы возьмем массив «а» с элементами 1,2,3,4,5. Теперь мы вызовем функцию np.convolve и сохраним ее вывод в нашей переменной «b». После этого мы напечатаем значение нашей переменной «b». Эта функция будет вычислять скользящую сумму нашего входного массива. Мы распечатаем вывод, чтобы увидеть, правильный ли наш вывод или нет.

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

Для этой цели мы инициализировали другую переменную «деном» для знаменателя. Это просто для понимания списка, используя трюк с диапазоном. Наш массив состоит из пяти различных элементов, поэтому количество выборок в каждом месте будет увеличиваться с одного до пяти, а затем уменьшаться с пяти до одного. Итак, мы просто добавим два списка вместе и сохраним их в нашем параметре «деном». Теперь мы напечатаем эту переменную, чтобы проверить, дала ли нам система истинные знаменатели или нет. После этого мы разделим нашу скользящую сумму на знаменатели и напечатаем ее, сохранив результат в переменной «c». Давайте выполним наш код, чтобы проверить результаты.

импорт пустышка в качестве например

а знак равно [ 1 , два , 3 , 4 , 5 ]

б знак равно например свернуться ( а , например one_like ( а ) )

Распечатать ( «Скользящая сумма» , б )

имя знак равно список ( диапазон ( 1 , 5 ) ) + список ( диапазон ( 5 , 0 , - 1 ) )

Распечатать ( «Знаменатели» , имя )

с знак равно например свернуться ( а , например one_like ( а ) ) / имя

Распечатать ( «Скользящее среднее» , с )

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

Например, шесть в третьем индексе массива получается из добавления 1,2 и 3 из нашего входного массива. Десять в четвертом индексе получается из 1,2,3 и 4. Пятнадцать получается из суммирования всех чисел и так далее. Теперь во второй строке нашего вывода мы напечатали знаменатели нашего массива.

Из нашего вывода мы видим, что все знаменатели точны, а это означает, что мы можем разделить их на наш массив скользящих сумм. Теперь перейдите к последней строке вывода. В последней строке мы видим, что первый элемент нашего массива скользящих средних равен 1. Среднее значение 1 равно 1, поэтому наш первый элемент правильный. В среднем 1+2/2 будет 1,5. Мы видим, что второй элемент нашего выходного массива равен 1,5, поэтому второе среднее значение также верно. Среднее значение 1,2,3 будет 6/3=2. Это также делает наш вывод правильным. Итак, из вывода мы можем сказать, что мы успешно вычислили скользящее среднее массива.

Вывод

В этом руководстве мы узнали о скользящих средних: что такое скользящая средняя, ​​для чего она используется и как ее рассчитать. Мы подробно изучили его как с математической, так и с точки зрения программирования. В NumPy нет специальной функции или процесса для вычисления скользящего среднего. Но есть и другие функции, с помощью которых мы можем рассчитать скользящее среднее. Мы сделали пример для расчета скользящей средней и описали каждый шаг нашего примера. Скользящие средние — это полезный подход к прогнозированию будущих результатов с помощью существующих данных.