การสร้าง lambda function
จำเวกเตอร์สามตัว visit_a, visit_b และ visit_c จากการทดสอบ A/B ในแบบฝึกหัดที่แล้วได้ไหม? เวกเตอร์เหล่านั้นยังคงอยู่ใน workspace ของคุณ
เวกเตอร์เหล่านี้เก็บอัตราการเข้าชมรายชั่วโมงแยกตามวัน โดยแต่ละองค์ประกอบสอดคล้องกับรูปแบบการออกแบบเว็บไซต์หนึ่งแบบ ซึ่งแสดงให้ผู้เข้าชมแบบสุ่ม เราจะแปลงเวกเตอร์เหล่านี้ให้เป็นจำนวนการเข้าชมต่อวัน แต่คราวนี้จะใช้ mapper
การใช้ mapper ช่วยให้เขียนโค้ดที่นำกลับมาใช้ซ้ำได้ หากได้รับมอบหมายให้ทำงานนี้อีกครั้ง คุณสามารถนำ mapper ที่มีอยู่แล้วมาใช้ได้เลย โดยไม่ต้องคัดลอกและวางโค้ดเดิมซ้ำแล้วซ้ำเล่า
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Functional Programming ระดับกลางด้วย purrr
คำแนะนำการฝึกหัด
- คำนวณจำนวนการเข้าชมต่อวันโดย map anonymous function บน
visit_a - ทำให้โค้ดกระชับขึ้นโดยใช้ mapper
- สร้าง mapper object ที่นำกลับมาใช้ซ้ำได้ชื่อว่า
to_day - เรียกใช้
to_dayกับเวกเตอร์ทั้งสาม (เรียกทั้งหมดสามครั้ง)
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Turn visit_a into daily number using an anonymous function
map(visit_a, ___(x) {
___
})
# Turn visit_a into daily number of visits by using a mapper
map(visit_a, ___)
# Create a mapper object called to_day
to_day <- as_mapper(___)
# Use it on the three vectors
map(visit_a, ___)
map(visit_b, ___)
map(visit_c, ___)