Giả sử bạn có một Series và muốn tính hệ số tự tương quan (autocorrelation) ở lag mặc định (1) và lag=2.
Giải pháp
- Tạo Series (có thể chứa NaN).
- Tự tương quan lag=1 (mặc định):
series.autocorr(). - Tự tương quan lag=2:
series.autocorr(lag=2).
Mã ví dụ
import pandas as pd
import numpy as np
series = pd.Series([2, 10, 3, 4, 9, 10, 2, np.nan, 3])
print("Series:\n", series)
print("\nTự tương quan (lag=1):", series.autocorr())
print("Tự tương quan (lag=2):", series.autocorr(lag=2))
Kết quả
Series: 0 2.0 1 10.0 2 3.0 3 4.0 4 9.0 5 10.0 6 2.0 7 NaN 8 3.0 dtype: float64 Tự tương quan (lag=1): -0.4711538461538461 Tự tương quan (lag=2): -0.2933396642805515
Giải thích:
- Autocorrelation đo lường sự tương quan giữa chuỗi và bản dịch của chính nó.
- Lag=1: So sánh t với t-1. Giá trị âm (-0.47) → xu hướng dao động ngược.
- Lag=2: So sánh t với t-2. Giá trị -0.29.
- NaN được bỏ qua khi tính toán (pairwise deletion).
- Dùng trong phân tích chuỗi thời gian (ARIMA, kiểm tra white noise).