Hitung rata-rata bergulir di semua cabang olahraga
Sekarang setelah Anda menguasai penyubsetan data untuk hanya memasukkan pertandingan akhir pekan, klien Anda menginginkan pendekatan lain. Mungkin industri pariwisata Boston meningkat ketika tim olahraga lokal memenangkan lebih banyak pertandingan di kandang.
Alih-alih berfokus pada pertandingan akhir pekan, tugas Anda adalah menghasilkan rata-rata menang/kalah bergulir yang berfokus pada pertandingan yang dimainkan di Boston. Untuk membuat indikator ini, Anda akan kembali menggunakan perintah rollapply() seperti di atas, kali ini menerapkan perhitungan pada semua tim olahraga wilayah Boston tetapi menyubset agar hanya memasukkan pertandingan kandang.
Latihan ini adalah bagian dari kursus
Studi Kasus: Menganalisis Data Deret Waktu Kota di R
Petunjuk latihan
- Subset data
sportsAnda agar hanya mencakup data dari pertandingan yang dimainkan di Boston (homegame = 1) menggunakan formatdata[column == x]. Simpan objek baru ini sebagaihomegames. - Gunakan
rollapply()untuk menghitung rata-rata menang/kalah dari 20 pertandingan kandang terakhir oleh tim olahraga Boston. Anda perlu menentukan kolomwin_lossdari datahomegamesAnda, aturwidthke20, dan atur argumenFUNkemean. Simpan indikator ini ke objekhomegamesAnda sebagaiwin_loss_20. - Gunakan pemanggilan
rollapply()serupa untuk menghitung rata-rata menang/kalah bergerak100pertandingan. Simpan indikator ini ke objekhomegamesAnda sebagaiwin_loss_100. - Gunakan
plot.zoo()untuk memvisualisasikan kedua indikator. Pastikan memilih kolomwin_loss_20danwin_loss_100serta mengatur argumenplot.typeke"single"untuk melihat keduanya dalam panel yang sama. Biarkan argumenltydanlwdsebagaimana adanya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Generate a subset of sports data with only homegames
homegames <- sports[sports$___ == ___]
# Calculate the win/loss average of the last 20 home games
homegames$win_loss_20 <- rollapply(___$___, width = ___, FUN = ___)
# Calculate the win/loss average of the last 100 home games
homegames$win_loss_100 <-
# Use plot.xts to generate
plot.zoo(___[, c("___", "___")], plot.type = "___", lty = lty, lwd = lwd)