MulaiMulai sekarang secara gratis

Rapikan data Anda dengan keep

Sejak awal kursus ini, kita menggunakan hasil uji A/B selama satu minggu.

Kami menempatkan hasil tersebut dalam sebuah list bernama all_visits. List ini berisi visit_a, visit_b, dan visit_c. Vektor-vektor ini tidak bernama. Masing-masing berisi tujuh angka, satu untuk setiap hari dalam seminggu.

Pertanyaan pertama yang ingin kita ajukan adalah: hari mana yang rata-rata mencapai lebih dari 100 kunjungan per jam? Kita akan menggunakan fungsi keep(). Namun jawabannya tidak akan mudah dibaca jika vektornya tidak bernama: Anda akan punya angkanya, tetapi tidak tahu angka itu milik hari yang mana.

Kabar baiknya: Anda dapat menggunakan fungsi set_names() untuk mengatasi hal ini. Inilah yang akan kita lakukan di bab ini: pertama, gunakan keep() pada vektor tanpa nama, lalu pada vektor yang sudah diberi nama.

Latihan ini adalah bagian dari kursus

Pemrograman Fungsional Tingkat Menengah dengan purrr

Lihat Kursus

Petunjuk latihan

  • Buat sebuah mapper yang akan menguji apakah .x lebih dari 100. Anda akan menggunakannya dua kali.
  • Gabungkan mapper ini dengan keep(), dan terapkan pada list tanpa nama all_visit. Karena hasilnya tidak bernama, Anda tidak tahu hari mana yang Anda pertahankan.
  • Beri nama setiap vektor dengan mengombinasikan map() dan fungsi set_names(), menggunakan vektor nama yang telah kami sediakan.
  • Terapkan mapper yang telah dibuat sebelumnya pada list yang baru saja diberi nama. Seperti yang Anda lihat, sekarang lebih mudah dibaca!

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Create a mapper that test if .x is more than 100 
is_more_than_hundred <- ___(~ .x > 100)

# Use this mapper with keep() on the all_visits object 
map(all_visits, ~ ___(.x, is_more_than_hundred))

# Use the  day vector to set names to all_list
day <- c("mon", "tue", "wed", "thu", "fri", "sat", "sun")
full_visits_named <- map(all_visits, ~ ___(.x, ___))

# Use this mapper with keep() 
map(full_visits_named, ~ ___(.x, ___))
Edit dan Jalankan Kode