/ / Como decompor várias séries temporais (colunas) de uma só vez? - r

Como decompor várias séries temporais (colunas) de uma só vez? - r

Eu tenho uma folha de excel contendo o seguintedados: 144 colunas com nomes como cabeçalhos e 729 valores (retornos ao longo do tempo) - veja a imagem. Eu consegui através do ts e decompor a função para decompor uma coluna (se o arquivo é apenas uma coluna). Como eu decomponho cada coluna separadamente quando leio o arquivo inteiro de uma só vez? Então eu recebo todos os componentes sazonais para cada coluna separadamente de uma só vez. Não consigo encontrar uma maneira de fazer a planilha inteira de uma só vez ou escolher apenas uma coluna.

Meus dados:

planilha

Saída em R:

Saída

Gráfico de saída em R:

Lote de saída

Como etapa final, deixo R deduzir a sazonalidade dos dados originais:

Final da Saída

Meus comandos até agora:

ts_svi = ts(svi, frequency = 7)
decompose_svi = decompose(ts_svi, type = "additive")
adjust_svi=ts_svi - decompose_svi$seasonal
adjust_svi

Respostas:

0 para resposta № 1

Me deparei com o mesmo problema e resolvê-lo usando lapply sobre os nomes da série (deve ser especificado):

colnames(ts) <- someNames

ts_dec <- lapply(colnames(ts), function(x) {decompose(ts[, x], type = "additive")})

Ou, usando os nomes dos seus objetos:

decompose_svi <- lapply(colnames(ts_svi), function(x) {decompose(ts_svi[, x], type = "additive")})

O resultado será uma lista grande, mas você poderá acessar todos os números sazonais. Espero que ajude.