Как измерить «однородность» временных рядов? - PullRequest
0 голосов
/ 22 января 2020

У меня есть два временных ряда, смотри это пи c: enter image description here

Мне нужно измерить уровень "однородности" ряда. Итак, первый выглядит очень фрагментированным, поэтому он должен иметь низкое значение, близкое к нулю, а второй должен иметь высокое значение.

Какие-нибудь идеи алгоритма, которые я мог бы использовать?

Ответы [ 2 ]

1 голос
/ 24 января 2020

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

top_nonstationarity = np.std(top.rolling(window_size).std())
bottom_nonstationarity = np.std(bottom.rolling(window_size).std())
1 голос
/ 22 января 2020

Это может помочь узнать больше о лежащей в основе разнице между сериями или о том, что вас волнует, но здесь все сказано ...

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

Возможные фильтры включают в себя простое скользящее среднее, независимо от того, что предоставляет ваш инструментарий временного ряда, и те, которые описаны в https://en.wikipedia.org/wiki/Savitzky%E2%80%93Golay_filter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...