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

การปรับตามฤดูกาลในช่วงฤดูยื่นภาษี

อนุกรมเวลาหลายชุดมีรูปแบบตามฤดูกาลที่ชัดเจน กระบวนการที่ใช้ขจัดองค์ประกอบตามฤดูกาลออกจากอนุกรมเวลาเรียกว่า การปรับตามฤดูกาล (seasonal adjustment) ตัวอย่างเช่น ข้อมูลเศรษฐกิจส่วนใหญ่ที่รัฐบาลเผยแพร่จะผ่านการปรับตามฤดูกาลมาแล้ว

ก่อนหน้านี้เราเห็นว่าการหาผลต่างอันดับหนึ่งของ random walk จะได้กระบวนการ white noise ที่มีความนิ่ง สำหรับการปรับตามฤดูกาล แทนที่จะหาผลต่างอันดับหนึ่ง เราจะหาผลต่างโดยใช้ lag ที่สอดคล้องกับคาบของข้อมูล

ลองดู ACF ของรายได้รายไตรมาสของ H&R Block อีกครั้ง ซึ่งโหลดไว้แล้วใน DataFrame HRB จะเห็นองค์ประกอบตามฤดูกาลได้ชัดเจน ค่า autocorrelation สูงที่ lag 4, 8, 12, 16, … เนื่องจากรายได้พุ่งสูงทุก 4 ไตรมาสในช่วงฤดูยื่นภาษี ให้ปรับตามฤดูกาลโดยหาผลต่างอันดับ 4 (ซึ่ง 4 แทนคาบของอนุกรม) แล้วคำนวณ autocorrelation ของอนุกรมที่แปลงแล้ว

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

การวิเคราะห์อนุกรมเวลาด้วย Python

ดูคอร์ส

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

  • สร้าง DataFrame ใหม่สำหรับรายได้ที่ปรับตามฤดูกาล โดยหาผลต่างที่ lag 4 ของรายได้รายไตรมาสด้วยเมธอด .diff()
  • ตรวจสอบ 10 แถวแรกของ DataFrame ที่ปรับตามฤดูกาลแล้ว และสังเกตว่า 4 แถวแรกจะเป็น NaN
  • ลบแถวที่เป็น NaN ออกด้วยเมธอด .dropna()
  • พล็อต autocorrelation function ของ DataFrame ที่ปรับตามฤดูกาลแล้ว

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

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

# Import the plot_acf module from statsmodels
from statsmodels.graphics.tsaplots import plot_acf

# Seasonally adjust quarterly earnings
HRBsa = ___

# Print the first 10 rows of the seasonally adjusted series
print(HRBsa.___)

# Drop the NaN data in the first four rows
HRBsa = ___

# Plot the autocorrelation function of the seasonally adjusted series
plot_acf(HRBsa)
plt.show()
แก้ไขและรันโค้ด