原文链接:http://tecdat.cn/?p=25220
当 ARIMA 模型包含其它工夫序列作为输出变量时, 被称为传递函数模型 (transfer function model)、多变量工夫序列模型 (multivariate time series model)、ARIMAX 模型或 Box-Tiao 模型。传递函数模型是 ARIMA 模型的天然推广,Pankratz 统称这种蕴含其它工夫序列作为输出变量的 ARIMA 模型为动静回归。
用于预测的 Arima
加载相干包和数据
bata<-read.csv
colnames(bata)
bata<-bata\[order(as.Date,\]
bata<-bata\[order(as.Date,\]
bata$workda<-as.factor
head(bata)
将数据划分为训练集和测试集
#ARIMA 编程开始
## 75% 的样本量
smsize <- floor(0.95 * nrow)
print(smze)
## 设置种子可重现
set.seed(123)
traid <- sample
trn <- bata\[1:smize, \]
tet <- baata\[smp_size+1:nrow, \]
tet<-na.omit
创立预测矩阵
xreg <- cbind(as_workday=model.matrix,
Temp,
Humid,
Winds
)
# 删除截距
xg <- xg\[,-1\]
# 重命名列
colnames<- c("Aldays","Tep","Humty","Wined")
#为测试数据创立雷同的
xrg1 <- cbind
# 删除截距
xreg1 <- xre1\[,-1\]
# 重命名列
colnames <- c("Aays","Te","uiiy","Wnsed")
为 arima 预测的训练数据创立工夫序列变量
Cont <- ts
推论:因为数据是每天的,频率为 365,开始日期为 2016-7-7
用季节性拟合 ARIMA 模型
Fo_aes<-forecast
计算测试数据集 MSE
mean((tt - Finlues)^2)
在去除季节性之前绘制预测值
library(ggplot2)
无季节性拟合 ARIMA
去除季节性数据集和绘图
decata = decompos
### 查找去节令数据的 ARIMAX 模型
moesea
Foecs<-forecast
去除季节性后绘制预测值
library(ggplot2)
plot(Co, series="Data") +
autolayer+
autolayer
均方误差重量
mean((tount - Fis_des)^2)
通过采纳滞后变量的输入以及滞后 1,2 的输出进行动静回归
x<-train\[order,\]
ti_ag <- x %>%
mutate
x1<-test
testg <- x1 %>%
mutate
应用动静滞后变量的 OLS 回归
mlm <- lm
推论:仅保留 P 值 <0.05 的重要变量并删除其余变量
仅保留重要变量的状况下从新创立 OLS 回归
Myal <-lm
summary(Myal)
在测试数据上预测雷同以计算 MSE
prynm<-predict
# 动静回归的均方误差
mean((teunt - tPrecd)^2)
绘制预测与理论
plot
abline
最受欢迎的见解
1. 在 python 中应用 lstm 和 pytorch 进行工夫序列预测
2.python 中利用长短期记忆模型 lstm 进行工夫序列预测剖析
3. 应用 r 语言进行工夫序列(arima,指数平滑)剖析
4.r 语言多元 copula-garch- 模型工夫序列预测
5.r 语言 copulas 和金融工夫序列案例
6. 应用 r 语言随机稳定模型 sv 解决工夫序列中的随机稳定
7.r 语言工夫序列 tar 阈值自回归模型
8.r 语言 k -shape 工夫序列聚类办法对股票价格工夫序列聚类
9.python3 用 arima 模型进行工夫序列预测