Skip to content

Commit e971c34

Browse files
authored
Merge pull request #1195 from m-muecke/perf/seasdummy-columns
perf(arima): avoid unused seasonal dummy columns
2 parents 19a4230 + f5288bb commit e971c34

1 file changed

Lines changed: 9 additions & 5 deletions

File tree

R/arima.R

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,12 +197,16 @@ SeasDummy <- function(x) {
197197
stop("Non-seasonal data")
198198
}
199199
tt <- seq_len(n)
200-
fmat <- matrix(NA_real_, nrow = n, ncol = 2 * m)
201-
for (i in seq_len(m)) {
202-
fmat[, 2 * i] <- sin(2 * pi * i * tt / m)
203-
fmat[, 2 * (i - 1) + 1] <- cos(2 * pi * i * tt / m)
200+
fmat <- matrix(NA_real_, nrow = n, ncol = m - 1L)
201+
for (j in seq_len(m - 1L)) {
202+
i <- (j + 1L) %/% 2L
203+
if (j %% 2L == 1L) {
204+
fmat[, j] <- cos(2 * pi * i * tt / m)
205+
} else {
206+
fmat[, j] <- sin(2 * pi * i * tt / m)
207+
}
204208
}
205-
fmat[, 1:(m - 1)]
209+
fmat[, seq_len(m - 1L)]
206210
}
207211

208212
# CANOVA-HANSEN TEST

0 commit comments

Comments
 (0)