勉強のアウトプットとしてやってますので間違ってたりすることがあります。お気軽にコメントして下さい。
今回は前回の記事で「予測 統計(理論編)」を書きましたが、理論だけではわからないとこもあるとおもうので実際にpythonのライブラリを使って実践していきます。今回は予測の中でも回帰という手法を使って予測をしていきます。
#内容
・モデリングの流れ
・単回帰分析をしてみよう
##モデリングの流れ
①説明変数(x軸)、目的変数(y軸)をあらかじめ決めておく
②データを読み込む
③モデルを格納する変数を準備
④モデル作成
⑤モデルから予測
##単回帰分析をしてみよう
簡単な分析ですが、実際のコードの流れは以下のような感じです。
import pandas as pd
import numpy as np
from matplotlib import pyplot
%matplotlib inline #現行のブラウザ表示
from sklearn.linear_model import LinearRegression as LR #線形回帰を行うクラス
train = pd.read_csv("train.csv") #②のフェーズ、学習データの読み込み
test = pd.read_csv("test.csv") #②のフェーズ、評価データの読み込み
sample = pd.read_csv("sample.csv") #②のフェーズ 評価データを書き込むサンプルを読み込む
trainX = train["列名"] #説明変数の設定
testX = test["列名"] #説明変数
y = train["列名"] #目的変数の設定
trainX = trainX.values.reshape(-1,1) #単回帰の場合はデータを整える必要がある
testX = testX.values.reshape(-1,1)
model = LR() #回帰モデルの変数を用意 ③のフェーズ
model.fit(trainX, y) #単回帰モデルを作成 ④のフェーズ
pred = model.predict(testX) #testXに予測結果を代入、列名ごとにyの値を与える
sample["代入したい列名"] = pred #予測をサンプルファイルに挿入
sample.to_csv("ファイル名.csv") #データファイルを書きだす
※trainとtestの列名は同じでなければ意味がありません。