Python. Ядра Jupyter останавливаются при увеличении числа лагов в пользовательском графике временных рядов - PullRequest
0 голосов
/ 01 мая 2018

У меня есть следующий код, который определяет функцию графика временных рядов и отображает статистику Adfuller

    def tsplot(y, lags=None, figsize=(12, 7), style='bmh'):
    if not isinstance(y, pd.Series):
        y = pd.Series(y)
    with plt.style.context(style):    
        fig = plt.figure(figsize=figsize)
        layout = (2, 2)
        ts_ax = plt.subplot2grid(layout, (0, 0), colspan=2)
        acf_ax = plt.subplot2grid(layout, (1, 0))
        pacf_ax = plt.subplot2grid(layout, (1, 1))

        y.plot(ax=ts_ax)
        ts_ax.set_title('Time Series Analysis Plots')
        smt.graphics.plot_acf(y, lags=lags, ax=acf_ax, alpha=0.5)
        smt.graphics.plot_pacf(y, lags=lags, ax=pacf_ax, alpha=0.5)

        print("Adfuller: p=%f" % sm.tsa.stattools.adfuller(y)[1])

        plt.tight_layout()
    return 
tsplot(dataset.Users, lags=30)

При попытке печати графика на моих данных с разным количеством лагов я столкнулся с проблемой. Все работает хорошо, когда лаг = 10, например, когда я увеличиваю количество лагов до 30-35, ядро ​​Jupyter выключается (вероятно, нет, но я ждал около 20 минут и не получил результата). Это также работало для лагов = 31 и не для лагов = 32, например. Я не смог найти никаких зависимостей здесь. Пытался сделать это в лаборатории Jupyter и Jupyter. Не могу понять, в чем проблема.

Набор данных содержит некоторые наблюдения за 300 дней.

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

...