1.基于周期因子的时间序列预测
- 提取时间序列的周期周期性特征进行预测
- 确定周期、 计算周期因子
方法1:除以周均值,按列取中位数
方法2:季节指数计算方式,获得每个工作日或周末均值,再除以整体均值 - 计算base
- 预测=base*周期因子
** 观察序列,当序列呈现周期性变化的时候,可以使用周期因子法作为baseline **
- 确定周期、 计算周期因子
- 如何预测下个月每天的情况
- 获得每日(1-31号)的均值
- 统计(周一到周日)每日的频次
- 基于星期周期因子获取加权均值
- 根据因子和每日均值预测
2.具体操作
1. 以星期为周期的中位数预测
-
选取时段
- 训练集时段:2014-03-01~2014-08-03
- 测试数据集:2014-08-04~2014-08-31
-
导入数据包
import pandas as pd
import numpy as np
import sklearn as skr
import datetime
import matplotlib as plt
import seaborn as sns
from dateutil import relativedelta
- 读取数据
def load_data(file_path):
data_balance = pd.read_csv(file_path)
data_balance = add_timestamp(data_balance,"report_date")
return data_balance.reset_index(drop=True)
#给数据集添加时间戳
def add_timestamp(data,date):
data_balance = data.copy()
data_balance["date"] = pd.to_datetime(data_balance[date],format="%Y%m%d")
data_balance["day"] = data_balance["date"].dt.day
data_balance["month"]= data_balance["date"].dt.month
data_balance["year"] = data_balance["date"].dt.year
data_balance["week"] = data_balance["date"].dt.week
data_balance["weekday"] = data_balance["date"].dt.weekday
return data_balance.reset_index(drop=True)
#按照日期统计申购/赎回金额总量
def total_amt(data,date)

本文介绍了一种基于周期因子的时间序列预测方法,通过提取序列的周期性特征进行预测,适用于展示周期性变化的序列。文章详细阐述了计算周期因子的具体步骤,包括确定周期、计算因子、生成基线预测值等,并提供了以星期为周期的中位数预测实例。
最低0.47元/天 解锁文章
2367

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



