MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

  • Subset data sports Anda agar hanya mencakup data dari pertandingan yang dimainkan di Boston (homegame = 1) menggunakan format data[column == x]. Simpan objek baru ini sebagai homegames.
  • Gunakan rollapply() untuk menghitung rata-rata menang/kalah dari 20 pertandingan kandang terakhir oleh tim olahraga Boston. Anda perlu menentukan kolom win_loss dari data homegames Anda, atur width ke 20, dan atur argumen FUN ke mean. Simpan indikator ini ke objek homegames Anda sebagai win_loss_20.
  • Gunakan pemanggilan rollapply() serupa untuk menghitung rata-rata menang/kalah bergerak 100 pertandingan. Simpan indikator ini ke objek homegames Anda sebagai win_loss_100.
  • Gunakan plot.zoo() untuk memvisualisasikan kedua indikator. Pastikan memilih kolom win_loss_20 dan win_loss_100 serta mengatur argumen plot.type ke "single" untuk melihat keduanya dalam panel yang sama. Biarkan argumen lty dan lwd sebagaimana 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)
Edit dan Jalankan Kode