7.2 回帰曲線 身長と体重…関係がありそう? ??? 身長と体重の関係をグラフで観察する.

Slides:



Advertisements
Similar presentations
1 変量データの記述 (度数分布表とヒストグラム) 経済データ解析 2009 年度後 期. あるクラスのテストの点数が次のように なっていたとする。 このように出席番号と点数が並んでいるものだけでは、 このクラスの特徴がわかりづらい。 → このクラスの特徴がわかるような工夫が必要 → このクラスの特徴がわかるような工夫が必要.
Advertisements

EXCEL 講習会 2014 年 5 月 1 日,2 日 OSIPP NWC ① 11 : 00 ~ 12 : 00 ② 13 : 00 ~ 14 : 00 1 政策データ分析.
2016 年度 計量経済学 講義内容 担当者: 河田 正樹
5.制御構造と配列 場合分け( If Then Else , Select Case ) 繰返し( Do While ) 繰返しその2( For Next )
エクセルと SPSS による データ分析の方法 社会調査法・実習 資料. 仮説の分析に使う代表的なモデ ル 1 クロス表 2 t検定(平均値の差の検定) 3 相関係数.
logistic regression をしたい場合の STATISTICA2000のアプリケーションの使い方について
データ解析
EXCELで学ぶマーケティング統計 第4章 経営学研究科 M1  真島 健.
データ分析入門(12) 第12章 単回帰分析 廣野元久.
電子情報工学科5年(前期) 7回目(21/5/2015) 担当:古山彰一
多変量解析 -重回帰分析- 発表者:時田 陽一 発表日:11月20日.
第3章 2変量データの記述 統計学基礎 2010年度.
重回帰分析入門 経済データ解析 2009年度.
相関係数 植物生態学研究室木村 一也.
得点と打率・長打率・出塁率らの関係 政治経済学部経済学科 ●年●組 ●● ●●.
数個、数十個のデータ点から その特徴をつかむ
第2章 単純回帰分析 ー 計量経済学 ー.
6.3 2次元DFT (1)2次元DFTとは 画像のような2次元信号をサンプリングしたデータを 2次元DFTを
VBA H106077 寺沢友宏.
第4回 (10/16) 授業の学習目標 先輩の卒論の調査に協力する。 2つの定量的変数間の関係を調べる最も簡単な方法は?
エクセル(2)の目次 セル範囲の指定方法 データの消去法 アクティブセルの移動 セル内容の複写と移動 セル幅の変更方法
重回帰分析入門 経済データ解析 2011年度.
回帰分析.
IT入門B2 ー 連立一次方程式 ー.
寺尾 敦 青山学院大学社会情報学部 社会統計 第12回 重回帰分析(第11章前半) 寺尾 敦 青山学院大学社会情報学部
相関と回帰:相関分析 2つの変量それぞれが正規分布にしたがってばらつく量であるとき,両変数の直線的な関係を相関分析する. 例:兄弟の身長
第6章 数量化I類.
第3章 重回帰分析 ー 計量経済学 ー.
第3章 重回帰分析 ー 計量経済学 ー.
第5章 回帰分析入門 統計学 2006年度.
確率・統計輪講資料 6-5 適合度と独立性の検定 6-6 最小2乗法と相関係数の推定・検定 M1 西澤.
4.2 連立非線形方程式 (1)繰返し法による方法
6.4 離散的コサイン変換 (DCT : discrete cosine transform ) (1)DCTとは
誤差の二乗和の一次導関数 偏微分.
テキストボックス、チェックボックス×2、コマンドボタンを配置する。 コマンドボタンに機能を与える
相関分析.
データ解析 静岡大学工学部 安藤和敏
 統計学講義 第11回     相関係数、回帰直線    決定係数.
4章までのまとめ ー 計量経済学 ー.
本時の目標 「簡単なプログラム言語の意味を理解し、マクロ機能を使って簡単なプログラムを作ることができる。」
情報工学Ⅱ (第9回) 月曜4限 担当:北川 晃.
電気・機械・情報概論 VBAプログラミング 第2回 2018年7月2日
最小自乗法.
「入力」はInputBoxやテキストボックスに限らず、 セルからのデータの入力や、チェックボックス等からの入力全てを含める。
部分的最小二乗回帰 Partial Least Squares Regression PLS
Excelを用いたBODE線図の作成方法
第3章補足2 多変量データの記述 統計学基礎 2010年度.
データの型 量的データ 質的データ 数字で表現されるデータ 身長、年収、得点 カテゴリで表現されるデータ 性別、職種、学歴
第7章 単回帰で「消費関数」を計測する 1.所得の定義 1.1 国民純生産 国内総生産(GDP) ⇔ 所得
計測工学 計測工学8 最小二乗法3 計測工学の8回目です。 最小二乗法を簡単な一時関数以外の関数に適用する方法を学びます。
データ解析 静岡大学工学部 安藤和敏
回帰分析(Regression Analysis)
情報工学Ⅱ (第9回) 月曜4限 担当:北川 晃.
データ解析 静岡大学工学部 安藤和敏
最小二乗法による線形重回帰分析 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
重回帰分析入門 経済データ解析 2008年度.
重回帰分析入門 (第5章補足) 統計学 2007年度.
情報工学Ⅱ (第8回) 月曜4限 担当:北川 晃.
回帰分析入門 経済データ解析 2011年度.
3 一次関数 1章 一次関数とグラフ §4 方程式とグラフ         (3時間).
場合分け(If Then Else,Select Case) 繰返し(Do While) 繰返しその2(For Next)
6.2 高速フーリエ変換 (1)FFT(fast Fourier transform)とは
6.5 アダマール(Hadamard)変換 (1)アダマール変換とは
共振を防ぐように設計を行ったり, 振動を早く減衰させる設計を行う際, 固有値と固有ベクトルを求めることが重要
コンピュータの高速化により, 即座に計算できるようになってきたが, 手法的にはコンピュータ出現以前に考え出された 方法が数多く使われている。
プログラミング言語によっては,複素数が使えない。
5.2 グレゴリー・ニュートン(Gregory-Newton)の補間式 (1)導入
8.2 数値積分 (1)どんなときに数値積分を行うのか?
5.3 ラグランジェ(Lagrange)の補間式
8.数値微分・積分・微分方程式 工学的問題においては 解析的に微分値や積分値を求めたり, 微分方程式を解くことが難しいケースも多い。
Presentation transcript:

7.2 回帰曲線 身長と体重…関係がありそう? ??? 身長と体重の関係をグラフで観察する

関係を見る 散布図が便利 独立変数(説明変数:身長)と 関係を求めたい従属変数(目的変数:体重)で 散布図を描いてみよう

(1) 散布図を描いてみる データ範囲の指定とグラフ挿入 (1) 散布図を描いてみる データ範囲の指定とグラフ挿入 散布図を描くデータの範囲を指定して,「挿入」「グラフ」を指定します。 身長・体重表はこちらから

散布図の選択 「グラフウィザード」でグラフの種類として「散布図」を選択し,その他のパラメータを指定します。

凡例の削除調整 このままでも良いのですが,目盛りのタイトルをつけましたので,凡例を消しておきましょう。 凡例のところで右ボタンをクリックして

凡例の削除 「クリア」を選択する

サイズの調整 見やすくサイズを調整しましょう。

(2)関係はあるのかな 直感で直線を引いてみる とにかく直感で直線を引いてみると… ここで左ボタンを離す 左ボタンを押したまま,線を引く

おおよその傾向 適当だけど… こんな感じかな? だけど… 適当じゃ~ 人によって 違うし? ???

回帰曲線 線分の長さをD i ( i=1~N)として,S = D12 + D22 + ・ ・・ + DN2 の Sを最小にするように Y = a X + b の a,b を求めます。 これを回帰直線と呼びます。S/Nは分散です。 S/Nは, 平均のところで 出てきた分散と 同じだよ!!

用語 説明変数が1つのとき : 単回帰分析 説明変数が2つ以上のとき : 重回帰分析 二乗の和を最小にする方法 : 最小二乗法 言葉を覚えよう… 説明変数が1つのとき : 単回帰分析 説明変数が2つ以上のとき : 重回帰分析 二乗の和を最小にする方法 : 最小二乗法

(3)最小二乗法 で近似することを考える。 残差平方和は 残差平方和が最低となるには,それぞれの係数で微分した値が0となればよい。 すなわち,以下の連立方程式を解くことで,係数を得ることができる。

直線の係数を求める 連立方程式を解くと とおいて

あえて式定義で求めてみよう 式定義

結果

あえて式定義で求めてみよう 結果 a0 = 10.03 a1 = 2.51

N次の多項式による近似 で近似することを考える。 残差平方和は 残差平方和が最低となるには,それぞれの係数で微分して得られた式を 整理した,以下の連立方程式を掃出し法等の手法を使って解けばよい。

VBAで2次以上の式で近似 シートの定義

VBA記述 ①データ宣言とデータ設定 Private データ数 As Integer Private 次元 As Integer Private X() As Double Private Y() As Double Private A() As Double Private Sub データ設定() With Worksheets("Sheet2") 次元 = Val(.Cells(2, 4)) i = 2 ‘データ数カウント Do While .Cells(i, 2) <> "" i = i + 1 Loop データ数 = i - 2 ReDim X(データ数), Y(データ数) ReDim A(次元 + 1, 次元 + 2) For i = 1 To データ数 X(i) = Val(.Cells(i + 1, 2)) Y(i) = Val(.Cells(i + 1, 3)) Next End With End Sub

VBA記述 ②結果設定とボタンのClickイベントハンドラ Private Sub 結果設定() With Worksheets("Sheet2") N = 次元 + 1: N1 = N + 1 For i = 1 To 次元 + 1 .Cells(i + 1, 5) = A(i, N1) Next End With End Sub Sub ボタン1_Click() データ設定 最小二乗法 A, X, Y, 次元, データ数 結果設定

VBA記述 ③連立方程式の係数設定 Private Sub 係数設定(A, X, Y, 次元, データ数) m = 次元 + 1 For i = 1 To m A(i, m + 1) = 0 For k = 1 To データ数 A(i, m + 1) = A(i, m + 1) + (X(k) ^ (i - 1)) * Y(k) Next For j = 1 To m A(i, j) = 0 A(i, j) = A(i, j) + X(k) ^ (i + j - 2) End Sub

VBA記述 ④確認用途中経過設定 (理解のための表示なので実際の実行ではいらない) Private Sub 途中経過設定(A, N) '実際の実行のときは,このルーチンはいらない With Worksheets("Sheet2") For i = 1 To N .Cells(i + 10, 1) = i Next For j = 1 To N + 1 .Cells(10, j + 1) = j .Cells(i + 10, j + 1) = A(i, j) End With End Sub

VBA記述 ⑤最小二乗法メイン Private Sub 最小二乗法(A, X, Y, 次元, データ数) ‘連立方程式を解く前の行列表示(実際の実行ではいらない) 途中経過設定 A, 次元 + 1 消去法 A, 次元 + 1, 0.00001 End Sub

結果のグラフ化 散布図に近似式を追加します。 (以下の近似式は0.05刻みで表示しています) 直線だけでなく 色々な近似が できるよ~

一般化(1) で近似するとき, 残差平方和は 残差平方和が最低となるには,それぞれの係数で微分した値が0となればよい。

一般化(2) すなわち, 以下の連立方程式を解くことに帰着する。

確認 一般式において, のとき直線近似と同じであることを確認せよ

(4)Excelの機能を使った近似 グラフ上のデータ部分で右クリックして, 「近似曲線の追加」を選択します。 直線だけでなく 色々な近似が できるよ~

Excelで関数当てはめ 「オプション」タブで「グラフに数式を表示する」, 「グラフにR-2乗値を表示する」にチェックを入れます。

R 2値 寄与率,決定係数ともいう。 (予測値の2乗和)/(実測値の2乗和) R 2 = 0.8 のとき,  (予測値の2乗和)/(実測値の2乗和) R 2 = 0.8 のとき, 「この回帰式は,80%くらい説明している」 と表現する。

式の移動 式が見にくいので,移動しましょう。 ②左ボタンを押したまま, 移動先まで移動して, 左ボタンを離します。   移動先まで移動して,   左ボタンを離します。 ①式のところで左ボタンを押し

式の当てはめ これで式を当てはめることができました。 余裕のある人は, この式をExcelのセルに定義して 実際の体重との差から 標準偏差を計算して 見てください。

2次式への当てはめ 2次式に当てはめてみました。 R2値がちょっとだけ 良くなったけど… あんまり変わらないね

特殊な式に比例することが分かっているとき (5)特殊な式への当てはめ 特殊な式に比例することが分かっているとき まず,基データに対して 演算した結果を説明変量とし, 目的変量との間で関数を 当てはめます。 この場合は,  y = 98.589/(1+exp(X))+29.93 とすることができます

(6)重回帰分析 重回帰分析 : 説明変量が2つ以上のときの回帰分析 1変数のときと同様 で近似することを考える。 残差平方和は 残差平方和が最低となるには,それぞれの係数で微分した値が0となればよい。

残差平方和の偏微分 残差平方和が最低となるには, それぞれの係数で微分した値が0となればよい。

連立方程式 すなわち,以下の連立方程式を解くことに帰着する。 対称行列であるから,ハウスホルダ法等により3重対角化が可能である。

行列の特徴 対称行列である ハウスホルダ法等により,3重対角化が可能である。

単純な例 関数がすべて一次式のとき 解くべき連立方程式は

VBAで記述 ①シート定義 結果確認のセルもあらかじめ式定義しておく

VBA記述 ①データ宣言とデータ設定 Private N As Integer Private M As Integer Private X() As Double Private Y() As Double Private A() As Double Sub データ設定() N = 10: M = 3 ReDim X(N, M), Y(N), B(M), A(M, M + 1) With Worksheets("Sheet2") For i = 1 To N Y(i) = .Cells(i + 1, M + 1) For j = 1 To M X(i, j) = .Cells(i + 1, j) Next End With End Sub

VBA記述 ②結果設定とClickイベントハンドラ Sub 結果設定() With Worksheets("Sheet2") For i = 1 To M .Cells(i + 1, 5) = A(i, M + 1) ‘ 消去法の結果 Next End With End Sub Sub Sheet2_ボタン1_Click() データ設定 重回帰 結果設定

VBA記述 ③係数設定と重回帰 Sub 係数設定() For k = 1 To M For j = 1 To M T = 0 For i = 1 To N T = T + X(i, k) * X(i, j) Next A(k, j) = T T = T + X(i, k) * Y(i) A(k, M + 1) = T Sub 重回帰() 係数設定 消去法 A, M, 0.0001 End Sub

VBA記述 ④結果の確認 [実行結果]

ハウスホルダー法の適用①データ宣言とデータ設定 ハウスホルダ法を適用したプログラム(シート定義は前述と同じ) Private N As Integer Private M As Integer Private X() As Double Private Y() As Double Private B() As Double Private Rank As Integer Private ConditionNumber As Double Sub データ設定() N = 10: M = 3 ReDim X(N, M), Y(N), B(M) With Worksheets("Sheet1") For i = 1 To N Y(i) = .Cells(i + 1, M + 1) For j = 1 To M X(i, j) = .Cells(i + 1, j) Next End With End Sub

②結果の設定とCLICKイベントハンドラ Sub 結果設定() With Worksheets("Sheet1") For i = 1 To M .Cells(i + 1, 5) = B(i) Next End With End Sub Sub ボタン1_Click() データ設定 Householder 結果設定

③ハウスホルダー法(その1) Sub Householder() Dim U() As Double Dim IPV() As Integer Dim INorm() As Double ReDim U(N), IPV(M), INorm(M) For k = 1 To M IPV(k) = k: INorm(k) = 1 Next ConditionNumber = M MaxRNorm = 0 For j = k To M IJ = IPV(j) If INorm(IJ) > 0 Then S = 0 For i = k To N S = S + X(i, IJ) * X(i, IJ)     If k = 1 Then INorm(IJ) = S: T = S Else T = S / INorm(IJ) End If

④ハウスホルダー法(その2) If T > MaxRNorm Then MaxRNorm = T: MaxNormSq = S: MaxP = j End If Next If MaxRNorm > 0 Then IK = IPV(MaxP): IPV(MaxP) = IPV(k): IPV(k) = IK Else Rank = k - 1: ConditionNumber = 0: Exit For For i = k To N U(i) = X(i, IK)   S = Sqr(MaxNormSq): If U(k) < 0 Then S = -S U(k) = U(k) + S: X(k, IK) = -S T = 1 / (U(k) * S) S = 0 S = S + U(i) * Y(i)

⑤ハウスホルダー法(その3) S = S * T For i = k To N Y(i) = Y(i) - S * U(i) Next For j = k + 1 To M IJ = IPV(j) S = 0 S = S + U(i) * X(i, IJ) X(i, IJ) = X(i, IJ) - S * U(i)

⑥ハウスホルダー法(その4) If ConditionNumber <> 0 Then Rank = M: ConditionNumber = 1 / Sqr(MaxRNorm) End If For k = Rank + 1 To M B(IPV(k)) = 0 Next For k = Rank To 1 Step -1 IK = IPV(k) S = Y(k) For j = k + 1 To Rank IJ = IPV(j): S = S - X(k, IJ) * B(IJ) B(IK) = S / X(k, IK) End Sub

(7)Excel使って重回帰分析 重回帰分析 : 説明変量が2つ以上のときの回帰分析 身長・ウェスト・体重表はこちらから 何か関係が 見つかるかな? 身長,ウェスト,体重の 統計データをみてみよう 身長・ウェスト・体重表はこちらから

まずは,3つの変量間の関係を 大ざっぱに,ながめてみよう!! 身長と体重,ウェストと体重,身長とウェストの関係を散布図にしてみよう。 身長と体重, ウェストと体重は, 関係あるみたいだけど, 身長とウェストは あまり関係なさそうだね。

そこで… 説明変量 : 身長,ウェスト 目的変量 : 体重 身長とウェストから 体重を推定できないか ってことだよ~

まず,分析ツールを有効に Excelで重回帰分析を行うには,アドインの「分析ツール」を有効にしておく必要があります。 これって, 毎回やる必要はないよ。 最初に1回だけ やればいいからね。 ①「ツール」「アドイン」を   選択して ②分析ツール」に   チェックを入れて ③「OK」ボタンを   クリックする

「分析ツール」の中に回帰分析があることを確認して…はじめましょう。 できたかな? さて,いよいよ…分析開始 「分析ツール」の中に回帰分析があることを確認して…はじめましょう。 ③回帰分析を   選択して   「OK」ボタンを   クリックします ①「ツール」「分析ツール」  を選択して ②スクロールバーを   移動して

入力元を指定(1) 入力Y範囲を指定 手順どおり やれば 大丈夫 入力Y範囲を選択します

入力元を指定(2) 入力Y範囲を指定 ドラッギング操作が 苦手な人は 慣れようね ①ここで左クリックして 左ボタンを押したまま 下に下げ,   左ボタンを押したまま   下に下げ, ②ここで左ボタンを   はなす。

入力元を指定(3) 入力X範囲を指定 入力X範囲を選択します なお,切片の定数を0にしたい場合は,ここをチェック。 余裕がでてきたら, 色々なオプションを 試してみることにして, 今は,この程度で… 入力X範囲を選択します なお,切片の定数を0にしたい場合は,ここをチェック。 しかし,今はやめときましょう。

入力元を指定(4) 入力X範囲を指定 ドラッギング操作が 苦手な人は 慣れようね ①ここで左クリックして 左ボタンを押したまま 下に下げ,   左ボタンを押したまま   下に下げ, ②ここで左ボタンを   はなす。

「OK」ボタンをクリックして,いよいよ重回帰分析開始 重回帰分析が 始まるよ 「OK」ボタンをクリックして

こんなシートが生成されますので,適当なセルを選択して範囲選択解除 結果 こんなシートが生成されますので,適当なセルを選択して範囲選択解除 色々なデータが 表示されているけど 普通はあんまり 気にしなくてもいいよ

結果の確認 この値が1.00に近いほど相関がある どこのセルでも良いから =TINV(両側危険度, 自由度) を入力してみよう。  どこのセルでも良いから   =TINV(両側危険度, 自由度) を入力してみよう。  両側危険度を0.05程度にして,  X値の t がこの値より大きければ 関係が強いことになる。 68%程度の決定率 このあたりは 注意しようね これらの数値は     体重=0.699295*身長  +        0.695397*ウェスト-112.411 で近似できることを示す

結論 残差が大きい : ばらつきが大きい 身長とウェストは体重と関係が強い : 一定の関係がある 残差が大きい : ばらつきが大きい 身長とウェストは体重と関係が強い : 一定の関係がある ばらつきはあるが,身長とウェストは体重に対して 一定の関係があり,次の式で表現できる。     体重=0.699295*身長  +        0.695397*ウェスト-112.411 ばらつきを少なくするには,何らかの他の説明変量を 導入しなければならない。

(8) 重回帰分析での工夫 ①たとえば説明変量が2個(X1とX2とすると)のとき,X 1*X 2,X 12,X 22の項を加えると重相関係数が良くなることが多い。 ②元のデータにある演算を施したものを説明変量とすると良い結果がでることがある。(単回帰曲線における成長関数) ③ 2次指数関数の場合,両辺の対数をとって考えると,良好な結果が得られることも多い。たとえば,理論的に,     Y=ABX1CX2    となる場合,     log(Y) = logA + X1・logB + X2・logC   とすることができるので,目的変量の対数をとって回帰分析を行えばよい。