本ページには広告・プロモーションが含まれています。
回帰分析とは 関係のある2つの変数があるとき、一方の数値が与えられたときに他方の数値を予測する分析方法 。
相関係数 は単純に2つの変数の関連性を数値的に示すものだが、回帰分析では 2つの変数の関係性を方程式 で表すので予測値が簡単に計算できるメリットがある。
Y は目的変数 と呼ばれ、いわゆる予測したい変数のこと。 いっぽう X は Y を説明する変数ということで説明変数 と呼ばれる。
回帰分析では a と b について知ることができる。
関係のありそうな変数を定義して回帰分析を行うことで、次回の抽せん数字を予想することができる。
まずは関係のありそうな2つの変数を定義(想定)してみる。
「100の位の数字について、金曜日の抽せん数字と月曜日の抽せん数字に関係がある」と仮説を立てて、月曜日の抽せん数字について回帰分析を行う。
抽せん回号第3001回から第4170回の抽せん数字から、金曜日の抽せん数字と月曜日の抽せん数字を抽出して分析する。
p100 = df.loc[3001:4170, ['dayofweek', 'place100']]
p100_mon = p100[p100['dayofweek'] == '月'] # 目的変数
p100_fri = p100[p100['dayofweek'] == '金'] # 説明変数
# ここから回帰分析
# y: 目的変数、x: 説明変数
scipy.stats.linregress(x=p100_fri.place100, y=p100_mon.place100)
# LinregressResult(slope=-0.017201566917084386, intercept=4.465256918410434, rvalue=-0.016997022200981666, pvalue=0.7959201237410788, stderr=0.0664336987032186)
# LinregressResult の内容
# slope=-0.017201566917084386
# intercept=4.465256918410434
# rvalue=-0.016997022200981666
# pvalue=0.7959201237410788
LinregressResult の内容で slope は a に対応し、 intercept は b に対応する。
Y = Xa + b [月曜日の数字] = [金曜日の数字] x a + b
金曜日の数字が「8」だとしたら:
Y = 8 * -0.017201566917084386 + 4.465256918410434
# Y = 4.327644383073759
月曜日の予想数字は「4」となる。
最終更新日: 2020年01月12日(日)