Как рассчитывается среднее значение ewm, когда присутствуют значения nan и корректировка = false? - PullRequest
0 голосов
/ 15 марта 2019

Чтобы оптимизировать расчет среднего значения EWM для панд, я реплицирую его, используя библиотеку numba. Однако я не могу понять, как выполняется вычисление при наличии значений nan.

Документация гласит следующее:

Когда ignore_na имеет значение False (по умолчанию), веса основаны на абсолютных позициях. Например, веса x и y, использованные при расчете окончательного средневзвешенного значения ... (1-альфа) ** 2 и альфа (если настройка - False).

Если установить span в 2 с массивом [1, None, 2], это будет означать, что третье значение EMA будет вычислено как:

alpha = 2 / (2 + 1)
((1 - alpha)**2) * 1 + alpha * 2

, что составляет 1,6666. Однако фактическое значение при выполнении series.ewm(span=2, adjust=False).mean()[-1] составляет 1,85714286.

Какая точная формула в случае значения nan? Приведенная выше формула не имеет большого смысла, так как веса не равны - было бы больше смысла, если бы оба веса суммировались в 1.

...