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

การแปลงข้อมูลรูปแบบอื่น

การ differencing ควรเป็นการแปลงข้อมูลแบบแรกที่ลองใช้เพื่อทำให้ time series มีความนิ่ง (stationary) แต่บางครั้งก็ไม่ใช่ตัวเลือกที่ดีที่สุด

วิธีคลาสสิกในการแปลง time series ของหุ้นคือการหา log-return ของอนุกรม ซึ่งคำนวณได้ดังนี้: $$log\_return ( y_t ) = log \left( \frac{y_t}{y_{t-1}} \right)$$

ข้อมูล time series ของหุ้น Amazon ถูกโหลดไว้ให้แล้วในชื่อ amazon สามารถคำนวณ log-return ของ DataFrame นี้ได้โดยแทนค่าดังนี้:

  • \(y_t \rightarrow\) amazon
  • \(y_{t-1} \rightarrow\) amazon.shift(1)
  • \(log() \rightarrow\) np.log()

ในแบบฝึกหัดนี้ จะเปรียบเทียบการแปลงด้วย log-return และผลต่างอันดับหนึ่ง (first order difference) ของ time series หุ้น Amazon เพื่อหาว่าแบบใดให้ผลที่ stationary ได้ดีกว่ากัน

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

ARIMA Models ใน Python

ดูคอร์ส

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

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

# Calculate the first difference and drop the nans
amazon_diff = ____
amazon_diff = amazon_diff.dropna()

# Run test and print
result_diff = adfuller(amazon_diff['close'])
print(result_diff)
แก้ไขและรันโค้ด