ฉันมีอนุกรมเวลาที่มีส่วนประกอบตามฤดูกาลสองเท่าและฉันต้องการแยกส่วนประกอบออกเป็นส่วนประกอบอนุกรมเวลาดังต่อไปนี้ (แนวโน้มองค์ประกอบตามฤดูกาล 1 องค์ประกอบตามฤดูกาล 2 และองค์ประกอบผิดปกติ) เท่าที่ฉันทราบขั้นตอน STL สำหรับการแยกย่อยซีรีย์ใน R อนุญาตเพียงหนึ่งองค์ประกอบตามฤดูกาลดังนั้นฉันจึงลองย่อยสลายซีรีส์สองครั้ง ขั้นแรกโดยการตั้งค่าความถี่ให้เป็นองค์ประกอบตามฤดูกาลแรกโดยใช้รหัสต่อไปนี้:
ser = ts(data, freq=48)
dec_1 = stl(ser, s.window="per")
จากนั้นฉันแยกส่วนประกอบที่ผิดปกติของซีรี่ส์ที่ย่อยสลาย ( dec_1
) โดยการตั้งค่าความถี่ให้เป็นองค์ประกอบตามฤดูกาลที่สองเช่น:
ser2 = ts(dec_1$time.series[,3], freq=336)
dec_2 = stl(ser2, s.window="per")
ฉันไม่มั่นใจกับวิธีนี้มากนัก และฉันอยากรู้ว่ามีวิธีอื่นใดในการย่อยสลายซีรีส์ที่มีหลายฤดูกาล นอกจากนี้ฉันได้สังเกตเห็นว่าtbats()
ฟังก์ชั่นในแพ็คเกจการคาดการณ์ R ช่วยให้ผู้ใช้สามารถปรับโมเดลให้เหมาะกับซีรี่ส์ที่มีหลายฤดูกาลได้ แต่ก็ไม่ได้บอกว่าจะสลายซีรีย์ด้วย