Creare oggetti di serie temporali in R
Una serie temporale può essere vista come un vettore o una matrice di numeri insieme ad alcune informazioni sui momenti in cui quei numeri sono stati registrati. Queste informazioni sono memorizzate in un oggetto ts in R. Nella maggior parte degli esercizi userai serie temporali che fanno parte di pacchetti esistenti. Tuttavia, se vuoi lavorare con i tuoi dati, devi sapere come creare un oggetto ts in R.
Vediamo l'esempio usnim_2002 qui sotto, che contiene i margini di interesse netto per le banche USA per l'anno 2002 (fonte: FFIEC).
> usnim_2002
usnim
1 2002-01-01 4.08
2 2002-04-01 4.10
3 2002-07-01 4.06
4 2002-10-01 4.04
> # ts(data, start, frequency, ...)
> usnim_ts = ts(usnim_2002[, 2], start = c(2002, 1), frequency = 4)
La funzione ts() accetta tre argomenti:
dataè impostato a tutto ciò che c'è inusnim_2002tranne la colonna delle date; non serve perché l'oggettotsmemorizzerà separatamente le informazioni temporali.startè impostato nel formatoc(year, period)per indicare il momento della prima osservazione. Qui, gennaio corrisponde al periodo 1; allo stesso modo, una data di inizio in aprile corrisponderebbe a 2, luglio a 3 e ottobre a 4. Quindi il periodo corrisponde al trimestre dell'anno.frequencyè impostata a 4 perché i dati sono trimestrali.
In questo esercizio leggerai alcuni dati di serie temporali da un file xlsx usando read_excel(), una funzione del pacchetto readxl, e salverai i dati come oggetto ts. Sia il file xlsx sia il pacchetto sono stati caricati nel tuo workspace.
Questo esercizio fa parte del corso
Previsioni in R
Istruzioni dell'esercizio
- Usa la funzione
read_excel()per leggere i dati da"exercise1.xlsx"inmydata. - Applica
head()amydatanella console di R per ispezionare le prime righe dei dati. Osserva le date: ci sono quattro osservazioni nel 1981, a indicare dati trimestrali con una frequency di quattro righe per anno. La prima osservazione o data di start èMar-81, la prima di quattro righe per l'year 1981, indicando che marzo corrisponde al primo period. - Crea un oggetto
tschiamatomytsusandots(). Impostadata,startefrequencyin base a ciò che hai osservato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Read the data from Excel into R
___ <- ___("exercise1.xlsx")
# Look at the first few lines of mydata
___
# Create a ts object called myts
myts <- ts(___[___], start = c(___, ___), frequency = ___)