プログラミング備忘録

初級プログラマ。python、DL勉強中

時系列トレンド表示

import pandas  as pd
import statsmodels.api as sm

import matplotlib
import matplotlib.pyplot as plt

### pyplot setting 

plt.style.use('ggplot')
font = {'family' : 'meiryo'}
matplotlib.rc('font', **font)

plt.rcParams["figure.figsize"] = [10,10]


df=pd.read_csv("./data/tokyo-hoge.csv")
df["TIMESTAMP"]=pd.to_datetime(df["DATE"])
print(df["TIMESTAMP"])

### グループ化
df_sum=df.groupby("TIMESTAMP")["POWER"].sum().reset_index()
df_sum=df_sum.sort_values("TIMESTAMP")
df_sum= df_sum.set_index(['TIMESTAMP'])
print(df_sum)

### plot
df_sum.plot(alpha=0.6)
plt.title("timeplot")
plt.savefig("./timelog/plot.png")

### トレンド、季節性、ノイズ
res = sm.tsa.seasonal_decompose(df_sum)
print(res)
res.plot()
plt.title("trend")
plt.savefig("./timelog/trend.png")