darts是一个强大而易用的Python时间序列建模工具包。在github上目前拥有超过7k颗stars。
它主要支持以下任务:
时间序列预测 (包含 ARIMA, LightGBM模型, TCN, N-BEATS, TFT, DLinear, TiDE等等)
时序异常检测 (包括 分位数检测 等等)
时间序列滤波 (包括 卡尔曼滤波,高斯过程滤波)
本文演示使用darts构建N-BEATS模型对 牛奶月销量数据进行预测~
公众号算法美食屋后台回复关键词:源码,获取本文notebook源码和数据集~
!pip install darts
一, 准备数据
首先,你需要准备时间序列数据。如果数据有缺失,需要进行数据填充。
这里示范的是一个每月牛奶销量数据集。
import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
import darts
from darts import TimeSeries
from darts.dataprocessing.transformers import MissingValuesFiller
from darts.dataprocessing.transformers import Scaler
# 1,读取数据集
df = pd.read_csv('month_milk.csv')
df.columns = ['ds','y']
df = df.sort_values(by='ds')
#df['y'] = df['y'].interpolate(method='linear')
# 2,填充数据集
ts_raw = TimeSeries.from_dataframe(df,time_col='ds',value_cols=['y'])
#df = ts_raw.pd_dataframe() #timeseries转成dataframe
fig, ax1 = plt.subplots(1, 1, figsize=(10,5))

最低0.47元/天 解锁文章
581

被折叠的 条评论
为什么被折叠?



