■ 回帰直線,回帰係数[目次]・・・簡単な内容 回帰直線とは Excelの散布図に回帰式を追加する方法(これが簡単) Excelのワークシート関数を使って回帰式を計算する方法 Excelの分析ツールを使って回帰式を求める方法 目的変数の予測値を数値として求める方法 ・・・やや難しい内容 最小二乗法の原理にさかのぼってExcelのソルバーを用いて回帰式を求める方法 最小二乗法によって回帰直線を求める考え方 |
表1
図1 |
||||||||||||||||||||||||||||||||
[記号・用語] ◇独立変数・説明変数・予測変数 ・・・変数xの値から変数yの値を予測するとき,変数xを独立変数(数学ではこの用語がよく用いられる)・説明変数・予測変数(統計ではこの用語がよく用いられる)などという. ◇従属変数・目的変数 ・・・変数xの値から変数yの値を予測するとき,変数yを従属変数(数学ではこの用語がよく用いられる)・目的変数(統計ではこの用語がよく用いられる)などという. ◇観測値,予測値,平均値 ・・・観測値を表す変数は x , y , 個々の観測値は xi , yi ,予測値は ^y (ワイ・ハットやワイ・カレットなどと読む),平均値は -x,-y と書く.予測値は変数であるが平均値は定数 |
[英語] 回帰直線 regression line 回帰係数 regression coefficient 偏回帰係数 partial regression coefficient 回帰分析 regression analysis 重回帰分析 multiple regression analysis
|
○ Excelのワークシート関数を使って回帰式を計算する方法 右の表2のようにデータがあるとき,式を書き込みたいセルをポイントしておく. (1)数式を直接書き込むとき 線形回帰直線の切片を計算する関数 INTERCEPT() を用いて 定数項αを求めるには =INTERCEPT(C2:C6,B2:B6) のように書き込む. * 右の表で色付けしたように,上端のラベルを含めない. * 関数INTERCEPT()の引数として,第1引数に「既知のy」を与えることになっているので,黄色で示した目的変数の値のセル範囲を書き込み,第2引数に「既知のx」として水色で示した説明変数の値のセル範囲を書き込む. 回帰係数βを求めるには =SLOPE(C2:C6,B2:B6) のように書き込む. * αを求めたときと同様に第1引数が「既知のy」,第2引数が「既知のx」になっているので注意. |
(2)メニューに沿って関数を選択するとき ◇Excel2002,2007共通 ワークシートの上の方にある数式バーの左隣にfx という関数挿入アイコンがあるのでこれをクリックする. [関数の分類]で統計を選択 [関数名]で各々INTRCEPT,SLOPEを選択して,左に述べたようにyの範囲,xの範囲の順に指定する. |
||||||||||||||||||||||||||||||||
○ Excelの分析ツールを使って回帰式を求める方法 ・・・この方法で求めるためには, →Excelのオプション→アドインで「アクティブなアプリケーション アドイン」に分析ツールが表示されなければならない. データ→(分析の中の)データ分析→回帰分析→OK 以後は右欄のExcel2002※と同様 |
◇Excel2002の場合◇ ・・・この方法で求めるためには,「ツール」→「アドイン」で「分析ツール」にチェックがついていなければならない. ツール→分析ツール→回帰分析→OK ※ 入力y範囲には表2の例では,変数yというラベルも含めて黄色で示した範囲を指定する. 入力x範囲には表2の例では変数xというラベルも含めて水色で示した範囲を指定する. 入力元の「ラベル」という項目にチェックを入れる. 同一シート内に結果を出力するときは,出力オプションの項目で「一覧の出力先」を選び,出力したい範囲の左上端のセルを指定する 3つのブロックに分かれて書き込まれる表のうち一番下の係数という項目が定数項α,回帰係数βを表す.
|
○ 目的変数の予測値を数値として求める方法 上記のいずれかの方法によってαすなわちINTERCEPT,βすなわちSLOPEが得られているときは,その値を用いて既知のxや未知のxに対応するyの予測値を計算することができる. 右の表3においてNo.1〜No.5が既知のデータで,これらの値から変数x=3.5のときの変数yの予測値を求めたいものとする. Excelのワークシート関数FORECASTを用いてC7のセルに予測値を書き込むには =FORECAST(B7,C2:C6,B2:B6) とする. この関数は単回帰(1つの変数xから変数yの値を予測する)ときに使え,2つ以上の変数から予測する重回帰では利用できない.Excelのワークシート関数TRENDを用いてC7のセルに予測値を書き込むには =TREND(C2:C6,B2:B6, B7, 1) とする.第4引数を省略するか1とかTRUEに指定すると定数項αを用いた予測式で計算され,第4引数を0とかFALSEに指定するとα=0とする予測式で計算される. |
表3
※変数x=3.5に対する変数yの予測値は3.29になる. |
○ 最小二乗法の原理にさかのぼってExcelのソルバーを用いて回帰式を求める方法 右の表4において変数x、yの値B2:C6が固定されているときに,α,βの値B9:C9を変化させて,これらの値を用いて計算しているE2:E6の2乗和E8が最小となるようにα,βの値を求める. (1) セルB9,C9には適当な初期値0.5,0.5などを記入しておく. (2) D2に=$B$9+$C$9*B2という計算式を書き込み,これをD3:D6までコピー・貼り付けする. (これがそれぞれのα,βに対する予測値になっている) (3) E2に=C2-D2と書き込む. (これがそれぞれのα,βに対する残差の計算になっている) (4) E8に=SUMSQ(E2:E6)と書き込む. (これが残差2乗和の計算[B2^2+B3^2+・・・B6^2と同じ]になっている.) ◇Excel2007の場合 (5) ツール→ソルバー 目的セルをE8に指定,目標値は最小値を選択 変化させるセルをB9:C9に指定 実行 最適解が見つかりました→解を記入する→OK |
◇Excel2002の場合 (5) データ→(分析の中の)ソルバー 目的セルをE8に指定,目標値は最小値を選択 変化させるセルをB9:C9に指定 実行 最適解が見つかりました→解を記入する→OK |
練習問題 [表を画面上でドラッグ・コピーしExcelに貼り付けるとよい] 右の表は2つのテストの得点表である. (1) テスト1の得点からテスト2の得点を推定する回帰式を作れ. (2) テスト1が55点であるとき,テスト2の得点推定値を求めよ. 解答 (1) y = 0.2188x + 40.985 (2) 53点 |
|
■[個別の頁からの質問に対する回答][回帰直線,回帰係数について/16.11.24]
お世話になります。
データが「観測結果」の取り扱いとして大変わかりやすいと思うのですが、一つ質問があります。
データが「点群」の場合はいかがでしょうか?
具体的には、一直線上にあるはずのものが千鳥足になっている場合、このページの手法でも「あるはずの直線」を求められるでしょうか?
(座標系が任意であっても同一の直線が得られるか?ということになります)
「回帰直線とは?」のあたりに補足として記載があれば最適と思います。
=>[作者]:連絡ありがとう.興味を持っていただいたということはありがたいことですが,質問内容をもっと絞ってください. すなわち,質的に異なる内容が1つの質問として尋ねられていますので,整合的な回答を示すことができません. (1) データが「点群」の場合は・・・通常の統計データは点群だと思いますので,この用語は何も限定しておらず,特に何も語っていません. (2) 一直線上にあるはずのものが千鳥足になっている場合・・・通常の統計データは,千鳥足になっています.はじめから同一直線上にあれば,回帰直線は不要で数学で解けます. (3) 座標系が任意であっても同一の直線が得られるか・・・「一般に,xからyを予測する式を裏返してもyからxを予測する式にはならない.」と文章で示してあります. 文章で回答すると以上のような味もそっけもないものになりますが,左図において図1の赤線はxからyを予測する直線で,図2の青線はyからxを予測する直線です.通常の場合これらは一致しません. |