ค่าที่หายไป
บางครั้งข้อมูลอนุกรมเวลาอาจมีค่าที่หายไป ซึ่งใน R จะแทนด้วย NA การรู้ตำแหน่งของค่าเหล่านี้จึงมีประโยชน์มาก นอกจากนี้ยังควรทำความเข้าใจว่าฟังก์ชันต่าง ๆ ใน R จัดการกับค่าที่หายไปอย่างไร บางครั้งเราอาจเลือกที่จะละเว้นค่าที่หายไป แต่ในบางกรณีเราอาจต้องการประมาณหรือแทนค่าเหล่านั้น
มาดูชุดข้อมูลรายเดือน AirPassengers อีกครั้ง แต่คราวนี้ข้อมูลของปี 1956 หายไป ในแบบฝึกหัดนี้ จะได้สำรวจผลกระทบของข้อมูลที่หายไปและลองแทนค่าเพื่อแก้ปัญหา
ฟังก์ชัน mean() ใช้คำนวณค่าเฉลี่ยของกลุ่มตัวอย่าง แต่จะล้มเหลวเมื่อมีค่า NA อยู่ในข้อมูล ให้ใช้ mean(___, na.rm = TRUE) เพื่อคำนวณค่าเฉลี่ยโดยตัดค่าที่หายไปออก การแทนค่าที่หายไปด้วยค่าเฉลี่ยของข้อมูลที่มีอยู่เป็นวิธีที่นิยมใช้กัน วิธีการแทนค่าแบบง่ายนี้เหมาะสมกับชุดข้อมูล AirPassengers หรือไม่?
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์อนุกรมเวลาใน R
คำแนะนำการฝึกหัด
- ใช้
plot()เพื่อแสดงกราฟของAirPassengersและสังเกตข้อมูลที่หายไปในปี 1956 - ใช้
mean()เพื่อคำนวณค่าเฉลี่ยของAirPassengersโดยลบค่าที่หายไปออก (na.rm = TRUE) - รันโค้ดที่เตรียมไว้ให้เพื่อแทนค่าเฉลี่ยลงในตำแหน่งที่ข้อมูลหายไป
- เรียกใช้
plot()อีกครั้งเพื่อแสดงกราฟข้อมูลAirPassengersที่แทนค่าแล้ว - รันโค้ดที่เตรียมไว้ให้เพื่อเพิ่มข้อมูล
AirPassengersที่สมบูรณ์ลงในกราฟ
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Plot the AirPassengers data
plot(___)
# Compute the mean of AirPassengers
# Impute mean values to NA in AirPassengers
AirPassengers[85:96] <- mean(AirPassengers, na.rm = ___)
# Generate another plot of AirPassengers
# Add the complete AirPassengers data to your plot
rm(AirPassengers)
points(AirPassengers, type = "l", col = 2, lty = 3)