การใช้ Pipe ใน map()
ทบทวนการใช้ pipe ระหว่าง ฟังก์ชันต่าง ๆ กันไปแล้ว คราวนี้มาดูการใช้ pipe ภายใน ฟังก์ชัน map() เพื่อวนซ้ำชุดของงานบน input ที่เป็นลิสต์กัน
ในแบบฝึกหัดนี้จะใช้ลิสต์ของตัวเลขแทนชุดข้อมูลจาก repurrrsive เพื่อให้สามารถทำการดำเนินการทางคณิตศาสตร์ได้หลายขั้นตอน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Foundations of Functional Programming with purrr
คำแนะนำการฝึกหัด
- สร้างลิสต์ที่มีค่าตั้งแต่ 1 ถึง 10 โดยแต่ละค่าเป็น element แยกกัน
- สร้าง pipeline ภายในฟังก์ชัน
map()เดียว โดยคำนวณsqrt()ของแต่ละ element แล้วตามด้วยsin()ของผลลัพธ์ที่ได้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create a list of values from 1 through 10
numlist <- list(___)
# Iterate over the numlist
map(___, ~.x %>% ___ %>% ___)