(Gスプレッドシート)回帰直線の傾きと切片を求める

 Googleスプレッドシートで、単回帰による回帰直線の傾きと切片の値を関数で求める方法についてです。

  • 回帰直線の傾きはSLOPE関数で、切片はINTERCEPT関数で求められます。
  • 引数の順番に注意が必要です。

手順

 まずは回帰直線についての確認です。
 画像ではB列とC列に最高気温と売上高のデータが10組配置されています。この最高気温と売上高の関係を(最小二乗法により)直線に近似させ「売上高=a×最高気温+b」の式で表したものが回帰直線です。このときaを傾き、bを切片と呼びます。
 回帰直線の形状と近似式については、データを散布図にした際に一緒に表示することもできます。

f:id:accs2014:20200621134747p:plain:w750

 この回帰直線と近似式の表示について、詳しくは次の記事をご覧ください。

www.officeisyours.com


 さて、この傾きと切片を関数で求めてみます。
 F3セルとF4セルにそれぞれ次のように入力します。

f:id:accs2014:20200621134751p:plain:w750

 F3セル(傾き)

=SLOPE(C3:C12,B3:B12)

 傾きはSLOPE関数で求められます。引数として最高気温(B3:B12)と売上高(C3:C12)の2つの配列を与えますが、相関係数と異なり引数の順番を間違えると異なる結果になってしまいますので注意が必要です。

 F4セル(切片)

=INTERCEPT(C3:C12,B3:B12)

 切片ははINTERCEPT関数で求められます。こちらも引数の順番に気を付ける必要があります。
 

 結果は次のようになります。傾きは約7.52で切片は約64.4となっており、グラフ上の表示と一致していることが分かります。
 簡単に言って最高気温が1上がると売り上げが7.52上がり、気温が0のときには売り上げが64.4になると推定される、というわけです。

f:id:accs2014:20200621134754p:plain:w750

 ただしこれらの値の信頼性について検証するには、さらに統計的な知識が必要です。