Kom igångKom igång gratis

Beräkna ett avslutande genomsnitt

Nu när du har utforskat några trender i dina Red Sox-data vill du ta fram några användbara indikatorer. I den här övningen beräknar du lagets vinst/förlust-genomsnitt i slutet av varje säsong. I finansiella termer kan du se det som lagets värde vid säsongens stängning.

För att beräkna ett avslutande vinst/förlust-genomsnitt behöver du kombinera några av de kommandon som använts i tidigare kapitel.

Först identifierar du vinster baserat på poängen i varje match. Det gör du med ett enkelt ifelse()-kommando och kunskapen att Red Sox vinner varje match där de gör fler poäng än motståndarlaget.

Därefter identifierar du datumet för den sista matchen varje säsong med hjälp av endpoints(). Det här kommandot identifierar det sista datumet i ditt objekt inom angivna perioder.

Slutligen beräknar du det avslutande vinst/förlust-genomsnittet varje säsong med period.apply() på kolumnen win_loss i dina data – ange close-datumen som index och mean som funktion.

Objektet redsox_xts finns tillgängligt i din arbetsmiljö.

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

Fallstudie: Analys av tidsseridata för städer i R

Visa kurs

Övningsinstruktioner

  • Använd ifelse för att beräkna win_loss, där värdet kodas som 1 om boston_score är större än opponent_score, och 0 annars.
  • Använd endpoints() för att identifiera datumet för den sista matchen varje säsong. Eftersom basebollsäsonger ryms inom ett enskilt år kan du ange argumentet on till "years" för att få fram den sista matchen varje år. Spara dessa datum som close.
  • Använd period.apply() för att beräkna vinst/förlust-genomsnittet vid säsongens slut. Ange kolumnen win_loss i dina redsox_xts-data, close-datumen som period och mean som funktion.

Interaktiv övning med praktiskt arbete

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

# Generate a new variable coding for red sox wins
redsox_xts$win_loss <- ifelse(redsox_xts$___ > redsox_xts$___, 1, 0)

# Identify the date of the last game each season
close <- endpoints(___, on = "___")

# Calculate average win/loss record at the end of each season
period.apply(redsox_xts[, "___"], ___, ___)
Redigera och kör kod