トレンド、周期、ノイズ(1)
環境設定
Google colaboratoryで実行できます
数理データサイエンスAIコンソーシアムのホームページから卸売り高データ、東京最高気温データ、日経225株価データをダウンロードします
!wget -O "/content/sample_data/whard_new.xlsx" "http://www.mi.u-tokyo.ac.jp/consortium2/data/whard_new.xlsx"
!wget -O "/content/sample_data/maxtemp.xlsx" "http://www.mi.u-tokyo.ac.jp/consortium2/data/maxtemp.xlsx"
!wget -O "/content/sample_data/nikkei225_new2.xlsx" "http://www.mi.u-tokyo.ac.jp/consortium2/data/nikkei225_new2.xlsx"
(1)時系列データの表示
ダウンロードしたエクセルの時系列データを画面に表示します。なお、下記のコマンドはGoogle colaboratoryで実行できます
f_n="whard_new"#@param{type:"string"}
import pandas as pd
f_n="whard_new"#@param{type:"string"}
df = pd.read_excel('/content/sample_data/'+f_n+'.xlsx')
df
(2)時系列データのグラフ表示
指定した時系列データのグラフを表示します。
import numpy as np
import matplotlib.pyplot as plt
df_n='whard'#@param{type:"string"}
x = np.array(range(len(df)))
y = np.array(df[df_n])
plt.plot(x, y)
plt.show()
(3)時系列データのトレンドとノイズの表示
指定した時系列データのトレンドとノイズを表示します。numは、移動平均の区間です。
num=30#@param{type:"integer"}
b=np.ones(num)/num
y2=np.convolve(y, b, mode='same')
y3=y-y2
plt.plot(x,y)
plt.show()
plt.plot(x,y2)
plt.xlim([min(x)+num,max(x)-num])
plt.show()
plt.plot(x,y3)
plt.xlim([min(x)+num,max(x)-num])
plt.show()
北海道医療大学・情報センター