Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Rで計量経済学#1 単回帰分析

Rで計量経済学#1 単回帰分析

所属している研究会で扱った資料になります。
内容について間違いがある可能性もありますので、その際にはご連絡ください。

TomoyaOzawa-DA

August 15, 2020
Tweet

More Decks by TomoyaOzawa-DA

Other Decks in Education

Transcript

  1. 6⽉ 応⽤的な 分析 2 Overview 5⽉ 実証分析 ⼊⾨ 7⽉ パネル

    データ分析 三⽥論で実証分析出来るようになりましょう! 3回のハンズオンと1回のグループワーク/⽉ で進める予定です.
  2. 02 とりあえず やってみる 3 Goal & Agenda 01 実証分析 とは?

    03 理論的補⾜ 実証分析の全体像を掴んで,分析の⾯⽩さを感じましょう!
  3. 02 とりあえず やってみる 4 Goal & Agenda 01 実証分析 とは?

    03 理論的補⾜ 実証分析の全体像を掴んで,分析の⾯⽩さを感じましょう!
  4. 02 とりあえず やってみる 7 Goal & Agenda 01 実証分析 とは?

    03 理論的補⾜ 実証分析の全体像を掴んで,分析の⾯⽩さを感じましょう!
  5. 10 R studioの準備 新しいプロジェクトを⽴ち上げます.(プロジェクト名は“R Lecture”) “File” -> “New Project...” ->

    “New Directory” -> ”New Project”で作れます! 仮説 ⽴て 収集 把握 モデル 推定 解釈
  6. 11 データの収集 female_labor.csvというデータを使⽤します. 先ほど作った“R Lecture”フォルダに保存してください. 仮説 ⽴て 収集 把握 モデル

    推定 解釈 ▼データの詳細1 ▼こんなデータのはず ▼データの⾒⽅ ・4950時間働いている⼈は,年齢は35歳, 教育年数は12年で…
  7. 12 データの把握:データの読み込み データをR studioに⼊れましょう. R Scriptを開いて,以下のコードを書いてください! 仮説 ⽴て 収集 把握

    モデル 推定 解釈 # 指定したcsvファイルを読み込んで,dfという名前をつける# df <- read.csv("female_labor.csv") # dfという名前のデータを表⽰する # View(df) ・他のコードの書き⽅として,以下のようなものがあります. この場合,データ名を書かずに直接ファイルをPC上から選ぶことが出来ます. df <- read.csv(file.choose())
  8. 13 データの把握:ヒストグラム作成 今回興味のある教育年数(education)と賃⾦(hourly_wage)に どのような値が⼊っているのかグラフを作って⾒てみましょう! 仮説 ⽴て 収集 把握 モデル 推定

    解釈 # dfというデータの中のeducationという列に関して,ヒストグラムを作成する # hist(df$education) ・12年間の教育を受けている⼈がかなり多いことがわかります. ・賃⾦に関しても各⾃でヒストグラムを作成してみてください!
  9. 14 データの把握:2次元プロット X軸に教育年数(education),Y軸に賃⾦(hourly_wage)をプロットして, 両者の関係性を探ってみましょう! 仮説 ⽴て 収集 把握 モデル 推定

    解釈 # x軸に教育年数,y軸に賃⾦をプロットする # plot(df$education, df$hourly_wage) ・教育年数が⻑い⼈の⽅が,賃⾦が⾼い傾向にありそうですね ・実証分析に⼊る前に,このようにデータの傾向を視覚的に把握しておく ことは⾮常に⼤事です. ・では計量経済学モデルを⽤いて,統計的に分析してみましょう!
  10. 15 計量経済学モデル構築:単回帰分析 単回帰モデル(≒直線の式)で考える.データから切⽚と傾きを推定する. 傾きが > であれば1,仮説が検証されたことになる. 賃金 = + ×教育年数

    + 仮説 ⽴て 収集 把握 モデル 推定 解釈 被説明変数 ⽬的変数 説明変数 従属変数 教育年数 賃⾦ 賃金 = + ×教育年数 ・賃金 : 番⽬の⼈の賃⾦ ・教育年数 : 番⽬の⼈の教育年数 ・:教育年数が1年増加した際の賃⾦の増加分を⽰す.限界効果という. ・ :回帰式から算出された予測値と実際の値との差分を⽰す.誤差項という. ※1: 厳密には統計的に有意である必要があります. これは次回に扱います.
  11. 16 推定:単回帰分析 Rで単回帰分析を実⾏してみましょう! 仮説 ⽴て 収集 把握 モデル 推定 解釈

    ## 計量経済学モデル構築 ## # 被説明変数を賃⾦,説明変数を教育年数として単回帰分析を実⾏して,その結果をoutという名 前の箱に格納 # out <- lm(df$hourly_wage ~ df$education) ・lmが回帰分析をしてもらうコードになります. ・今回は分析結果にoutという名前をつけていますが,なんでもOKです. ・ 別の書き⽅もあります. out <- lm(data = df, hourly_wage ~ education)
  12. 17 解釈:単回帰分析の結果の⾒⽅ 分析結果を確認してみましょう! 結果の詳細な⾒⽅(統計的有意,決定係数)は次回解説します. 仮説 ⽴て 収集 把握 モデル 推定

    解釈 # 分析結果を出す # summary(out) 推定値 統計的有意性(P値) 決定係数 ◦この結果を数式で表すと… 賃金 = −. + . ×教育年数 1年教育年数が増えると, 0.45264ドル賃⾦が上昇すると解釈出来ます ⇨ > より仮説は検証された! ◦教育年数が12年の⼈の賃⾦は 賃金 = −. + . × つまり,2.24474ドルと予測されます
  13. 18 解釈:分析結果をプロットしてみる 推定した回帰式を可視化してみましょう! 仮説 ⽴て 収集 把握 モデル 推定 解釈

    # x軸に教育年数,y軸に賃⾦をプロットする # plot(df$education, df$hourly_wage) # 回帰分析結果を追加でプロットする.col = で⾊の指定をしています.# abline(out, col = "blue") 確かに, 右肩あがりの直線であることがわかります.
  14. 02 とりあえず やってみる 19 Goal & Agenda 01 実証分析 とは?

    03 理論的補⾜ 実証分析の全体像を掴んで,分析の⾯⽩さを感じましょう!
  15. 20 どうやってとは推定されているのか? 誤差 ( ) の⼆乗和1が最⼩となるようなとを計算しています(最⼩⼆乗法) 最⼩⼆乗法によって推定された値 (と) を最⼩⼆乗推定量といいます. 3

    賃金 = 4 + 5 ×教育年数 03 理論的補⾜ 賃金 = + ×教育年数 + 教育年数 賃⾦ 表記⽅法を抑えておきましょう! ・賃金 :番⽬のデータ ・ $ 賃金 :予測値(今回だと最⼩⼆乗法で計算された値) ・賃金 :データの平均値 6 ↔ = 賃金 − − ×教育年数 ※1: 誤差にはプラス・マイナス共にあるので,2乗和を使⽤しています. ※2: 実測値とはデータ上の値のことです. 誤差 賃金の予測値 実測値2
  16. 21 どうやってとは推定されているのか? 以下の過程をPCが⾃動でやってくれています.(PCは計算機なんです) 03 理論的補⾜ 今回の場合,誤差は以下のように表されます. = 賃金 − −

    ×教育年数 誤差の2乗和は…(データの個数が個あるとすると) 9 " = 9 " (賃金 − − ×教育年数 ) 誤差の2乗和を最⼩にすると を求めるために, それぞれについて微分をした2式を連⽴⽅程式として解きます. 9 " = 9 " (賃金 − − ×教育年数 ) = 9 " = 9 " (賃金 − − ×教育年数 ) = ※1: この2式を正規⽅程式と⾔います.