จำลองโมเดล Autoregressive
โมเดล Autoregressive (AR) ถือเป็นโมเดล Time Series ที่ได้รับความนิยมสูงที่สุด โมเดลนี้มีการตีความที่คุ้นเคยเหมือนกับการถดถอยเชิงเส้นอย่างง่าย แต่แต่ละค่าสังเกตจะถูก regress บนค่าสังเกตก่อนหน้า นอกจากนี้ โมเดล AR ยังครอบคลุมโมเดล White Noise (WN) และ Random Walk (RW) ที่ได้ศึกษาไปในบทก่อนหน้าในฐานะ special cases
ฟังก์ชัน arima.sim() ที่ใช้งานได้หลากหลายในบทก่อนหน้า สามารถนำมาจำลองข้อมูลจากโมเดล AR ได้เช่นกัน โดยกำหนดอาร์กิวเมนต์ model ให้เท่ากับ list(ar = phi) ซึ่ง phi คือพารามิเตอร์ความชันที่มีค่าอยู่ในช่วง (-1, 1) รวมทั้งต้องระบุความยาวของชุดข้อมูล n ด้วย
ในแบบฝึกหัดนี้ จะใช้คำสั่งดังกล่าวเพื่อจำลองและพล็อตโมเดล AR สามแบบที่มีพารามิเตอร์ความชันเท่ากับ 0.5, 0.9 และ -0.75 ตามลำดับ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์อนุกรมเวลาใน R
คำแนะนำการฝึกหัด
- ใช้
arima.sim()เพื่อจำลองข้อมูล 100 ค่าสังเกตของโมเดล AR ที่มีค่าความชันเท่ากับ 0.5 โดยกำหนดอาร์กิวเมนต์modelให้เท่ากับlist(ar = 0.5)และกำหนดอาร์กิวเมนต์nให้เท่ากับ100แล้วบันทึกข้อมูลที่จำลองได้ไปยังx - ใช้คำสั่ง
arima.sim()ในลักษณะเดียวกันเพื่อจำลองข้อมูล 100 ค่าสังเกตของโมเดล AR ที่มีค่าความชันเท่ากับ 0.9 แล้วบันทึกข้อมูลไปยังy - ใช้คำสั่ง
arima.sim()เป็นครั้งที่สามเพื่อจำลองข้อมูล 100 ค่าสังเกตของโมเดล AR ที่มีค่าความชันเท่ากับ -0.75 แล้วบันทึกข้อมูลไปยังz - ใช้
plot.ts()ร่วมกับcbind()เพื่อพล็อต ts object ทั้งสามตัว (x,y,z)
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Simulate an AR model with 0.5 slope
x <- arima.sim(model = ___, n = ___)
# Simulate an AR model with 0.9 slope
y <-
# Simulate an AR model with -0.75 slope
z <-
# Plot your simulated data
plot.ts(cbind(___, ___, ___))