เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

sapply กับฟังก์ชันที่เขียนเอง

เช่นเดียวกับ lapply(), sapply() ก็รองรับการใช้ฟังก์ชันที่เขียนขึ้นเองและนำไปใช้กับเวกเตอร์หรือลิสต์ได้:

sapply(X, FUN, ...)

ในที่นี้ FUN อาจเป็นฟังก์ชันในตัวของ R หรือจะเป็นฟังก์ชันที่เขียนเองก็ได้ โดยสามารถนิยามฟังก์ชันนั้นไว้ล่วงหน้า หรือจะใส่เป็น anonymous function โดยตรงก็ได้เช่นกัน

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

R ระดับกลาง

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เติมโค้ดให้ฟังก์ชัน extremes_avg() สมบูรณ์ โดยฟังก์ชันนี้รับเวกเตอร์ของอุณหภูมิ แล้วคำนวณค่าเฉลี่ยระหว่างอุณหภูมิต่ำสุดและสูงสุดของเวกเตอร์นั้น
  • จากนั้น นำฟังก์ชันนี้ไปใช้ใน sapply() เพื่อวนใช้กับแต่ละเวกเตอร์ภายใน temp
  • ลองใช้ฟังก์ชันเดิมกับ temp ผ่าน lapply() แล้วสังเกตว่าผลลัพธ์ที่ได้ต่างกันอย่างไร

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# temp is already defined in the workspace

# Finish function definition of extremes_avg
extremes_avg <- function(___) {
  ( min(x) + ___ ) / 2
}

# Apply extremes_avg() over temp using sapply()


# Apply extremes_avg() over temp using lapply()
แก้ไขและรันโค้ด