投資のためのデータサイエンス

個人の投資活動に役立つデータ分析にまつわる話題を綴ります。

スプレッドシートによるデータアナリティクス(8) 回帰分析(LINEST関数の利用)

本シリーズの第3回目で、散布図の上にトレンド線を引く方法を解説しました。その直線の係数は「最小二乗法」により求めること、統計学ではこれを「回帰分析」ということを書きました。散布図のトレンドを示す回帰直線は、回帰分析では最も基本的な形で、被説明変数を単一の説明変数で説明する「線形単回帰分析」となります。説明変数が2つ以上の場合を「重回帰分析」といいます。

【LINEST関数】
Excelにはアドインをインストールしなくても、重回帰分析の計算を行える機能が装備されています。それがLINEST関数です。LINEST関数はGoogleスプレッドシートにもありますが、内容は全く同じなのでここではExcelで説明します。
〔LINEST関数の書式〕回帰式をy=mx+bと表します。
LINEST(既知のy1, [既知のx], [定数], [補正])
1 - 既知のy ----- 既知のy(被説明変数)の値をセル範囲または配列で指定します。
2 - [既知のx] ----- (省略可) 既知のx(説明変数)の値をセル範囲または配列で指定します。
3 - [定数] ----- (省略可) 定数項の取り扱いを論理値で指定します。TRUEを指定するか省略すると、y=mx+bとなるように計算されます。FALSEを指定すると、y=mxとなるように計算されます。
4 - [補正] ----- (省略可) 補正項を返すかどうかを論理値で指定します。TRUEを指定すると、回帰直線の補正項が追加情報として返されます。FALSEを指定するか省略すると、係数mと定数bのみが返されます。

【LINEST関数による回帰分析の実施手順】
LINEST関数の計算結果は、関数を入力したセルを起点に右下方向に展開されますが、数値だけでその説明は表示されません。そのため、あらかじめ下の図のように説明の語句を記入しておくことが推奨されます。一番上の行は、右端に「定数項」、そして説明変数の名前を元のデータとは逆順に配置します。2行目以降は説明変数の数によらず固定です(図は[定数]=true,[補正]=trueの場合)
f:id:nicjps230:20210225171133j:plain
次に、説明欄で囲まれた領域の左上セルに=linest()の関数を入力します。
f:id:nicjps230:20210225171153j:plain
enterキーを押すと計算結果が表示されます。#N/Aと表示されたセルはエラーではなく「該当なし」です。
f:id:nicjps230:20210225171212j:plain
尚、回帰係数がゼロであるという帰無仮説のもとでのt統計量は(係数値)÷(係数の標準誤差)ですので、別途自分で=(表示結果の1行目)/(表示結果の2行目)の計算をします。t統計量の絶対値がおおむね2よりも大きければ5%で有意にゼロから離れていると言えます。
f:id:nicjps230:20210225171235j:plain