Como criar uma série temporal em r (com exemplos)
A maneira mais fácil de criar um objeto de série temporal em R é usar a função ts() .
Esta função usa a seguinte sintaxe básica:
ts(dados, início, fim, frequência)
Ouro:
- dados : um vetor ou matriz de valores de séries temporais
- início : hora da primeira observação
- end : A hora da última observação
- frequência : O número de observações por unidade de tempo.
Os exemplos a seguir mostram como usar esta função para criar diferentes objetos de série temporal na prática.
Exemplo 1: Crie uma série temporal com dados mensais
Suponha que temos o seguinte vetor denominado dados que contém o número de vendas realizadas por uma loja de varejo durante 20 meses consecutivos, a partir de 1º de outubro de 2023:
#create vector of 20 values
data <- c(6, 7, 7, 7, 8, 5, 8, 9, 4, 9, 12, 14, 14, 15, 18, 24, 20, 15, 24, 26)
Podemos usar a função ts() e especificar Frequency=12 para criar um objeto de série temporal a partir deste vetor:
#create time series object from vector ts_data <- ts(data, start=c(2023, 10), frequency=12) #view time series object ts_data Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 2023 6 7 7 2024 7 8 5 8 9 4 9 12 14 14 15 18 2025 24 20 15 24 26
Observe que o vetor de valores foi convertido em um objeto de série temporal onde os valores agora estão associados a um mês de outubro de 2023 a maio de 2025.
Também podemos usar a função class() para confirmar que ts_data é de fato um objeto de série temporal:
#display class of ts_data object
class(ts_data)
[1] “ts”
Exemplo 2: Crie uma série temporal com dados anuais
Suponha que temos o seguinte vetor denominado data , que contém o número de vendas realizadas por uma loja de varejo durante 20 anos consecutivos, começando em 2000:
#create vector of 20 values
data <- c(6, 7, 7, 7, 8, 5, 8, 9, 4, 9, 12, 14, 14, 15, 18, 24, 20, 15, 24, 26)
Podemos usar a função ts() e especificar Frequency=1 para criar um objeto de série temporal a partir deste vetor:
#create time series object from vector ts_data <- ts(data, start=2023, frequency=1) #view time series object Time Series: Start = 2000 End = 2019 Frequency = 1 [1] 6 7 7 7 8 5 8 9 4 9 12 14 14 15 18 24 20 15 24 26
Observe que o vetor de valores foi convertido em um objeto de série temporal onde os valores agora estão associados a um ano de 2000 a 2019.
Também podemos usar a função class() para confirmar que ts_data é de fato um objeto de série temporal:
#display class of ts_data object
class(ts_data)
[1] “ts”
Se desejarmos, também podemos usar a função plot() para visualizar as vendas por ano:
#create line plot of time series data
plot(ts_data)
Observe que o eixo X exibe o ano e o eixo Y exibe os valores de vendas.
Também podemos personalizar o gráfico para facilitar a leitura:
#create line plot with custom x-axis, y-axis, title, line color and line width plot(ts_data, xlab=' Year ', ylab=' Sales ', main=' Sales by Year ', col=' blue ', lwd= 3 )
Sinta-se à vontade para modificar os argumentos da função plot() para criar o gráfico de série temporal exato que você deseja.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:
Como traçar uma série temporal em R
Como converter um quadro de dados em uma série temporal em R
Como converter uma string para Datetime em R