- 問題
- 答え
- 解説
次の Python コードの出力から何がわかりますか?
Python コード:
import numpy as np
from scipy.signal import welch
np.random.seed(42)
t = np.arange(500)
data = (
100*np.sin(2*np.pi*t/50)
+100*np.sin(2*np.pi*t/12)
+np.random.randn(500))
freqs, psd = welch(data,fs=1,nperseg=256)
top = np.argsort(psd)[-5:][::-1]
print("Freq\tPSD\t Period")
for i in top:
print(f"{freqs[i]:.3f}\t"
f"{psd[i]:.1f}\t {1/freqs[i]:.2f}")
回答の選択肢:
(A) データに含まれるトレンドの傾きと切片がわかる
(B) データに含まれる周期成分とその強さがわかる
(C) データの定常性の有無がわかる
(D) データの自己相関が有意なラグ数がわかる

