Obliczanie średniej na koniec sezonu
Po zbadaniu trendów w danych Red Sox czas na wyliczenie przydatnych wskaźników. W tym ćwiczeniu obliczysz średnią wygranych/przegranych drużyny na koniec każdego sezonu. Można to potraktować jak wartość drużyny na zamknięcie sezonu – podobnie jak w terminologii finansowej.
Aby wyliczyć tę średnią, skombinujesz kilka funkcji poznanych w poprzednich rozdziałach.
Najpierw wyznaczysz wygrane na podstawie wyników każdego meczu. Użyjesz do tego prostej funkcji ifelse() – Red Sox wygrywają mecz, gdy zdobywają więcej punktów niż drużyna przeciwna.
Następnie wyznaczyłeś datę ostatniego meczu w każdym sezonie za pomocą endpoints(). Ta funkcja wskazuje ostatnią datę w obiekcie w obrębie określonych okresów.
Na koniec, aby obliczyć średnią wygranych/przegranych na zamknięcie sezonu, użyj period.apply() na kolumnie win_loss swoich danych, podając daty close jako indeks oraz mean jako funkcję.
Obiekt redsox_xts jest dostępny w twoim środowisku pracy.
To ćwiczenie jest częścią kursu
Studium przypadku: analiza danych szeregów czasowych miasta w R
Instrukcje do ćwiczenia
- Użyj
ifelse, aby wyliczyćwin_loss: wartość1, jeśliboston_scorejest większe niżopponent_score, lub0w przeciwnym razie. - Użyj
endpoints(), aby wyznaczyć datę ostatniego meczu w każdym sezonie. Ponieważ sezon baseballowy mieści się w jednym roku, ustaw argumentonna"years", aby uzyskać ostatni mecz każdego roku. Zapisz te daty jakoclose. - Użyj
period.apply(), aby obliczyć średnią wygranych/przegranych na koniec sezonu. Podaj kolumnęwin_lossze swojego obiekturedsox_xts, datyclosejako okres orazmeanjako funkcję.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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[, "___"], ___, ___)