いきなり答える備忘録

G Suite・Microsoft 365・LibreOfficeなどに関するメモと日々の実験

(Gスプレッドシート)回帰直線による予測の例(FORECAST関数)

 Googleスプレッドシートで、回帰直線に基づく予測を行う例です。具体的には説明変数が1つだけの単純な例で、被説明変数の予測値を求める例を示します(単回帰分析)。
 本来は回帰直線そのものを求めたうえで説明変数を任意に設定して計算する、というプロセスをたどりますが、関数を使うことで予測値を一気に求めることがができます。
 
  • FORECAST関数を使うことで、回帰直線に基づく予測値を直接求めることができます。

手順

f:id:accs2014:20200726134610p:plain:right:w400

 最高気温(説明変数)と売上高(被説明変数)を記した10組のデータがあります。
 このデータに基づき「最高気温が34のときの売上高」を単回帰分析(説明変数が「最高気温」の1つだけ)により求めるものとします。

 

f:id:accs2014:20200726134614p:plain:right:w550

 E3セルに、予測に用いる最高気温「34」を入力します。
 そしてF3セルに次の式を入力します。

 F3セル

=FORECAST(E3,C3:C12,B3:B12)

 FORECAST関数を使い、引数として次の3つを順に指定します。
・E3……予測に用いる説明変数の値(最高気温)
・C3:C12……既にある被説明変数(売上高)のデータ
・B3:B12……既にある説明変数(最高気温)のデータ
 

f:id:accs2014:20200726134619p:plain:right:w550

 確定すると、予測値は約919.5となりました。

 丁寧にやるとすればSLOPE関数やINTERCEPT関数を使って回帰直線を求めたうえで予測値を計算するところですが、FORECAST関数を使えば過程をスキップして予測結果だけを求めることができます。

 
 次の画像は、この予測値をデータに含めて散布図と回帰直線、さらに回帰直線の式(これらはグラフの機能として表示できるものです)を示した様子です。赤い点で示した予測値が回帰直線上に乗っているのがわかります。
 回帰直線の式は25.6x+50.3と示されています(端数が丸められていますので注意)。x=34(最高気温が34)とすると25.6*34+50.3=920.7となり、FORECAST関数の結果とほぼ一致することがわかります。もちろん正確なのはFORECAST関数の方です。

f:id:accs2014:20200726134624p:plain:right:w750

 なお、グラフに回帰直線と式を表示する方法については次の記事をご覧ください。

www.officeisyours.com