Soumitha Chowdary
Soumitha Chowdary

Reputation: 11

Incorrect number of dimensions in forecasting regression model

I am using regression model and forecasting its data. I have the following code:

y <- M3[[1909]]$x
data_ts <- window(y, start=1987, end = 1991-.1)
fit <- tslm(data_ts ~ trend + season)
summary(fit)

It works until now and while forecasting,

plot(forecast(fit, h=18, level=c(80,90,95,99)))

It gives the following error:

Error in `[.default`(X, , piv, drop = FALSE) : 
  incorrect number of dimensions

Appreciate your help.

Upvotes: 1

Views: 267

Answers (1)

Rob Hyndman
Rob Hyndman

Reputation: 31800

This works for me using the current CRAN version (8.15) of the forecast package:

library(forecast)
library(Mcomp)
y <- M3[[1909]]$x
data_ts <- window(y, start=1987, end = 1991-.1)
fit <- tslm(data_ts ~ trend + season)
summary(fit)
#> 
#> Call:
#> tslm(formula = data_ts ~ trend + season)
#> 
#> Residuals:
#>     Min      1Q  Median      3Q     Max 
#> -204.81  -73.66  -11.44   69.99  368.96 
#> 
#> Coefficients:
#>             Estimate Std. Error t value Pr(>|t|)    
#> (Intercept) 4438.403     65.006  68.277  < 2e-16 ***
#> trend          2.402      1.323   1.815  0.07828 .  
#> season2       43.298     84.788   0.511  0.61289    
#> season3      598.145     84.819   7.052 3.84e-08 ***
#> season4      499.993     84.870   5.891 1.19e-06 ***
#> season5      673.940     84.942   7.934 3.05e-09 ***
#> season6      604.988     85.035   7.115 3.20e-08 ***
#> season7      571.785     85.148   6.715 1.03e-07 ***
#> season8      695.533     85.282   8.156 1.64e-09 ***
#> season9      176.930     85.436   2.071  0.04603 *  
#> season10     656.028     85.610   7.663 6.58e-09 ***
#> season11    -260.875     85.804  -3.040  0.00453 ** 
#> season12    -887.062     91.809  -9.662 2.79e-11 ***
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> Residual standard error: 119.9 on 34 degrees of freedom
#> Multiple R-squared:  0.949,  Adjusted R-squared:  0.931 
#> F-statistic: 52.74 on 12 and 34 DF,  p-value: < 2.2e-16
plot(forecast(fit, h=18, level=c(80,90,95,99)))

Created on 2022-01-02 by the reprex package (v2.0.1)

Perhaps you're loading some other packages that are over-writing forecast().

Upvotes: 1

Related Questions