Usando merge() e fazendo gráficos ao longo do tempo
Agora que você tem dados de temperatura cobrindo o mesmo período (2010–2015) e na mesma frequência (mensal) que seus dados de voos, você está pronto para mesclar.
Para mesclar objetos xts por coluna, você pode usar merge(). Quando dois objetos xts compartilham a mesma periodicidade, merge() geralmente consegue combinar as informações nas linhas apropriadas. Mesmo quando objetos xts não compartilham a mesma periodicidade, merge() preserva a ordenação temporal correta desses objetos em períodos distintos.
Neste exercício, você vai mesclar seus dois objetos xts por coluna e gerar novos gráficos explorando como os atrasos de voos se relacionam com a temperatura. temps_monthly e flights_xts estão disponíveis no seu espaço de trabalho.
Este exercício faz parte do curso
Estudo de Caso: Analisando Séries Temporais de Cidades em R
Instruções do exercício
- Use
merge()para combinarflights_xtsetemps_monthly. Como esses objetos xts compartilham periodicidade, seu comando de mesclagem deve colocar os dados de temperatura na linha apropriada do seu objetoflights_xts. Observe que a ordem em que você lista os objetos a serem mesclados determina onde as colunas aparecerão no objeto mesclado. Para manter a consistência, insiraflights_xtsprimeiro etemps_monthlydepois. - Examine as primeiras linhas do seu objeto xts mesclado (
flights_temps) para confirmar que a mesclagem foi bem-sucedida. Você deve ver os dados de temperatura alinhados com os dados de voos. - Use
plot.zoo()para gerar um único gráfico contendo as colunaspct_delayetemps_monthlydeflights_temps. Certifique-se de selecionar apenas as colunas relevantes e definirplot.typecomo"single". Deixe o argumentoltycomo está.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Use merge to combine your flights and temperature objects
flights_temps <- merge(___, ___)
# Examine the first few rows of your combined xts object
# Use plot.zoo to plot these two columns in a single panel
plot.zoo(___[,c("___", "___")], plot.type = "___", lty = lty)
legend("topright", lty = lty, legend = labels, bg = "white")