前提・実現したいこと
Python, 統計学ともに初心者の者です。
この度、仕事でGLMを用いた解析が必要となり、勉強している最中です。
SIGNATEのお弁当箱需要データ(https://signate.jp/competitions/24)を用いて
GLMで解析し、実測データと予測値をグラフ化してみることにしました。
以下のウェブサイトを参考にしました。
(https://tech-diary.net/generalized-linear-model-with-python/)
発生している問題・エラーメッセージ
見よう見まねでやってみるとグラフ化できましたが、
これで合っているのか自信がありません。
この手法で誤りがないかご教授頂ければ幸いです。
該当のソースコード
# 1. 必要なライブラリの読み込み import pandas as pd import statsmodels.formula.api as smf import statsmodels.api as sm # 2. 使用するデータの読み込み df = pd.read_csv("Desktop/Pyhton memo/trainmoji.csv", encoding="shift-jis") df.head() # 3. smf.glmで使うformula(線形予測子)とfamily(確率分布)を設定する y = df['y'] x = pd.get_dummies(df[['temperature']]) # 説明変数 family = sm.families.Poisson() x = sm.add_constant(x) # 4. 先ほどの設定値を使って一般化線形モデルを作成 model = sm.GLM(y, x, family=family) # 5. 作成したモデルを学習させる result = model.fit() # 6. 結果の表示 result.summary() # 7.グラフの作成 import matplotlib.pyplot as plt pred = result.predict(x) df['pred'] = pred df.plot(y=['y','pred'], x='datetime', figsize=(30,5), title='GLM') plt.savefig("Desktop/jupyter/GLMotehon.png")
この手法で誤りがないかご教授いただければ幸甚です
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/05 14:23