2.10 Esercizi

  1. Utilizza la funzione help per esplorare le serie gafa_stock, PBS, vic_elec e pelt.

    1. Utilizza autoplot() per rappresentare alcune delle serie contenute in questi dataset.
    2. Qual è l’intervallo temporale di ogni serie?
  2. Utilizza filter() per trovare quali giorni corrispondono al prezzo di chiusura massimo per ciascuno dei quattro titoli in gafa_stock.

  3. Scarica il file tute1.csv dal sito web del libro, aprilo in Excel (o in un’analoga applicazione di foglio elettronico), ed analizzane il contenuto. Dovresti vedere quattro colonne di dati. Le colonne da B a D contengono ciascuna una serie trimestrale, etichettate rispettivamente Sales, AdBudget e GDP. Sales contiene le vendite trimestrali di una piccola impresa nel periodo 1981-2005. AdBudget indica il bilancio pubblicitario e GDP indica il prodotto interno lordo. Tutte le serie sono state corrette per tener conto dell’inflazione.

    1. Puoi importare i dati in R con il seguente script:

      tute1 <- readr::read_csv("tute1.csv")
      View(tute1)
    2. Converti i dati in serie storiche

      mytimeseries <- tute1 %>%
        mutate(Quarter = yearmonth(Quarter)) %>%
        as_tsibble(index = Quarter)
    3. Costruici i grafici per le serie temporali per ciascuna delle tre serie

      mytimeseries %>%
        pivot_longer(-Quarter) %>%
        ggplot(aes(x = Quarter, y = value, colour = name)) +
        geom_line() +
        facet_grid(name ~ ., scales = "free_y")

      Controlla cosa succede se non inserisci facet_grid().

  4. Il package USgas contiene dati sulla domanda di gas naturale negli USA.

    1. Installa il package USgas.
    2. Crea un oggetto tsibble a partire da us_total usando year come index e state come chiave.
    3. Rappresenta graficamente il consumo annuale di gas naturale per stato dell’area del New England (che comprende gli stati del Maine, Vermont, New Hampshire, Massachusetts, Connecticut e Rhode Island).
    1. Scarica tourism.xlsx dal sito del libro ed importalo in R usando readxl::read_excel().
    2. Crea un oggetto tsibble che è identico al tsibble tourism del package tsibble.
    3. Trova quale combinazine di Region e Purpose ha il numero massimo di pernottamenti in media.
    4. Crea un nuovo tsibble che combina Purposes e Regions, e ha solo i viaggi totali per State.
  5. Costruire dei grafici temporali delle seguenti quattro serie: Bricks da aus_production, Lynx da pelt, Close da gafa_stock, Demand da vic_elec.

    • Usa ? (oppure help()) per avere informazini sui dati in ciascuna serie.
    • Per l’ultimo grafico modifica le etichette degli assi e il titolo.
  6. Il dataset aus_arrivals comprende gli arrivi internazionali trimestrali in Australia dal Giappone, Nuova Zelanda, Gran Bretagna e Stati Uniti.

    • Usa autoplot(), gg_season() e gg_subseries() per confrontare le differenze tra gli arrivi da questi quattro paesi.
    • Puoi identificare qualche osservazione anomala?
  7. aus_retail contiene i dati australiani mensili di vendite al dettaglio. Seleziona una delle serie storiche come segue (ma scegli un valore per il seme casuale):

    set.seed(12345678)
    myseries <- aus_retail %>%
      filter(`Series ID` == sample(aus_retail$`Series ID`,1))

    Esplora la serie temporale delle vendite al dettaglio scelta utilizzando le seguenti funzioni:

    autoplot(), gg_season(), gg_subseries(), gg_lag(),

    ACF() %>% autoplot()

    Puoi ipotizzare la presenza di stagionalità, cicli e trend? Cosa puoi concludere sulla serie?

  1. Utilizza le seguenti funzioni grafiche: autoplot(), gg_season(), gg_subseries(), gg_lag(), ACF() ed esplora le caratteristiche delle seguenti serie storiche: Total Private Employed da us_employment, Bricks da aus_production, Hare da pelt, “H02” Cost da PBS, e us_gasoline.

    • Puoi ipotizzare la presenza di stagionalità, cicli e trend?
    • Cosa puoi concludere sulle serie?
    • Cosa puoi dire circa i pattern di stagionalità?
    • Riesci ad identificare qualche anno insolito?
  2. I seguenti grafici temporali dell’ACF corrispondono a quattro differenti serie storiche. Il tuo compito è di abbinare ogni grafico temporale nella prima riga con uno dei grafici ACF nella seconda riga.

  3. I dati aus_livestock contengono il numero totale mensile di suini macellati in Victoria, Australia, dal luglio 1972 al dicembre 2018. Usa filter() per estrarre i suini macellati in Victoria tra il 1990 ed il 1995. Usa autoplot() e ACF() per questi dati. In che modo differiscono da un white noise? Se si utilizza un periodo più lungo per i dati, che differenza si ha nell’ACF?

    1. Usa il codice seguente per calcolare i cambiamenti giornalieri nei prezzi di chiusura delle azioni Google.

      dgoog <- gafa_stock %>%
        filter(Symbol == "GOOG", year(Date) >= 2018) %>%
        mutate(trading_day = row_number()) %>%
        update_tsibble(index = trading_day, regular = TRUE) %>%
        mutate(diff = difference(Close))
    2. perché è necessario reindicizzare il tsibble?

    3. Rappresenta queste differenze e la corrispondente ACF.

    4. Le variazioni dei prezzi azionari sembrano white noise?