Kom igångKom igång gratis

Aggregera till veckovy med avslut på onsdagar

I den här övningen lär du dig en generell aggregeringsteknik för att aggregera dagliga data till veckovisa data – med veckor som avslutas på onsdagar. Det här görs ofta inom aktiemarknadsforskning för att undvika säsongsmönster inom veckan.

Funktionen period.apply() tar ett xts-objekt, slutpunkter för en tidsperiod och en aggregeringsfunktion. Sedan applicerar den funktionen på varje grupp av data mellan slutpunkterna.

Funktionen endpoints() kan beräkna slutpunkterna för en tidsperiod till period.apply(), men du kan även använda egna slutpunkter. Din anpassade vektor med slutpunkter måste dock börja med noll och sluta med det totala antalet observationer du ska aggregera – precis som utdata från endpoints().

Du använder .indexwday() för att hitta onsdagen i varje vecka. Den returnerar ett tal mellan 0 och 6, där söndag = 0.

Den här övningen använder de dagliga Fed Funds-data (DFF) från tidigare övningar.

Den här övningen är en del av kursen

Importera och hantera finansiella data i R

Visa kurs

Övningsinstruktioner

  • Använd .indexwday() för att hämta veckodagarna från indexet i DFF. Tilldela resultatet till index_weekdays.
  • Använd funktionen which() för att hitta positionerna för onsdagarna i index_weekdays. Spara resultatet i wednesdays.
  • Komplettera kommandot så att end_points börjar med 0 och slutar med det totala antalet rader – precis som utdata från endpoints().
  • Använd period.apply() och end_points för att aggregera DFF till veckogenomsnitt. Tilldela resultatet till weekly_mean.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Extract index weekdays (Sunday = 0)


# Find locations of Wednesdays
wednesdays <- ___(index_weekdays == 3)

# Create custom end points
end_points <- c(___, wednesdays, ___)

# Calculate weekly mean using custom end points
Redigera och kör kod