トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

Rintro2.1

 データになじむ→一気に回帰分析まで

#Rには多くのデータフレームが用意されている。これらを使ってデータセット、変数の扱いになじむ。

data()

#と入力するとデータの一覧が出力される。#ここではswissというデータを使ってみる。

data(swiss)

#データを見てみる(データフレーム名や変数名をタイプすると、それが表示される)

swiss

#編集も可能。

edit(swiss)

#データセットに含まれる記述統計を算出

summary(swiss)

このデータフレームに入っている変数名をみてみる。

names(swiss)

#データセットに含まれる変数を使いたい場合、

#データセット名の後に$変数名とすると、その変数のみを利用可能。

swiss$Agriculture
swiss$Fertility

#参考)変数名のみを指定するとエラーになる。

Fertility

#ただしattach()コマンドでデータセットを宣言しておくと、変数名を直接利用可能。

attach(swiss)
Fertility

#演算も可能

Agriculture*Fertility
Agriculture-Fertility
sqrt(Agriculture)

#含まれている変数を一括して散布図に。

plot(swiss)
cor(swiss) #相関係数

#特定の二つの変数を散布図に

plot(Agriculture,Fertility)

#このデータでは行に州の名前が付けられている。

rownames(swiss)

#上のグラフにどの州か、ラベルをつける。

text(Agriculture,Fertility,rownames(swiss))

#ヒストグラム

hist(Agriculture)
hist(Fertility)
# Q 宗教と教育はFertilityにどのような影響を与えるか?(注:説明の簡略化のため因果関係として説明するが、実際に因果関係を同定することは、特に一時点のデータでは困難もしくは不可能なので「相関」と考えた方がよい。)
#回帰分析の実行
summary(res1<-lm(Fertility~ Education,data=swiss))

#結果

Call:
lm(formula = Fertility ~ Education, data = swiss)
Residuals:
  Min     1Q Median     3Q    Max 
-17.04  -6.71  -1.01   9.53  19.69 
Coefficients:
           Estimate Std. Error t value Pr(>|t|)    
(Intercept)   79.610      2.104   37.84  < 2e-16 ***
Education     -0.862      0.145   -5.95  3.7e-07 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
Residual standard error: 9.45 on 45 degrees of freedom
Multiple R-squared: 0.441,	Adjusted R-squared: 0.428 
F-statistic: 35.4 on 1 and 45 DF,  p-value: 3.66e-07

 

summary(res2<-lm(Fertility~ Catholic,data=swiss))  #別の変数で
Call:
lm(formula = Fertility ~ Catholic, data = swiss)
Residuals:
   Min     1Q Median     3Q    Max 
-35.31  -4.06   0.51   6.85  16.68 
 Coefficients:
           Estimate Std. Error t value Pr(>|t|)    
(Intercept)  64.4283     2.3051   27.95   <2e-16 ***
Catholic      0.1389     0.0396    3.51    0.001 ** 
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
Residual standard error: 11.2 on 45 degrees of freedom
Multiple R-squared: 0.215,	Adjusted R-squared: 0.198 
F-statistic: 12.3 on 1 and 45 DF,  p-value: 0.00103 
summary(res12<-lm(Fertility~ Education+Catholic,data=swiss))  #二つの変数で
Call:
lm(formula = Fertility ~ Education + Catholic, data = swiss)
Residuals:
   Min     1Q Median     3Q    Max 
-15.04  -6.58  -1.43   6.12  14.32  
Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  74.2337     2.3520   31.56  < 2e-16 ***
Education    -0.7883     0.1293   -6.10  2.4e-07 ***
Catholic      0.1109     0.0298    3.72  0.00056 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
Residual standard error: 8.33 on 44 degrees of freedom
Multiple R-squared: 0.575,	Adjusted R-squared: 0.555 
F-statistic: 29.7 on 2 and 44 DF,  p-value: 6.85e-09
Q  Agriculture はFertilityにどのような影響を与えると考えるか?それを回帰分析によって確認(検定)してみる。
Q 教育と宗教にはどのような関係があると考えられるか? それを回帰分析によって確認(検定)してみる。
#別のデータ
library(MASS)
data(Boston)
Q1 このデータの説明、helpをみて各変数の意味を理解する。
Q2 このデータの記述統計を算出してみる。
Q3 データについてヒストグラム、散布図などを描いてみる。どのような特徴がみられるか?
Q4 なにが不動産の価値 medvを規定するのかを考え、回帰分析によって検定してみる。
taxで説明。
res<-lm(medv~tax,data=Boston)
summary(res)
>Coefficients:
>            Estimate Std. Error t value Pr(>|t|)     
>(Intercept) 32.97065    0.94830    34.8   <2e-16 ***
>tax         -0.02557    0.00215   -11.9   <2e-16 ***
>---
>Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>Residual standard error: 8.13 on 504 degrees of freedom
>Multiple R-squared:  0.22,	Adjusted R-squared:  0.218  
>F-statistic:  142 on 1 and 504 DF,  p-value: <2e-16
radで説明。
res2<-lm(medv~ rad,data=Boston)
summary(res2)
>Coefficients:
>          Estimate Std. Error t value Pr(>|t|)    
>(Intercept)  26.3821     0.5618   46.96   <2e-16 ***
>rad          -0.4031     0.0435   -9.27   <2e-16 ***
>---
>Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>Residual standard error: 8.51 on 504 degrees of freedom
>Multiple R-squared:  0.146,	Adjusted R-squared:  0.144 
>F-statistic: 85.9 on 1 and 504 DF,  p-value: <2e-16
taxとradで説明。
res3<-lm(medv~ tax+rad,data=Boston)
summary(res3)
>Coefficients:
>           Estimate Std. Error t value Pr(>|t|)    
>(Intercept) 35.63592    1.34652   26.47  < 2e-16 ***
>tax         -0.03856    0.00515   -7.48  3.2e-13 ***
>rad          0.27624    0.09972    2.77   0.0058 ** 
>---
>Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>Residual standard error: 8.08 on 503 degrees of freedom
>Multiple R-squared:  0.231,	Adjusted R-squared:  0.228 
>F-statistic: 75.7 on 2 and 503 DF,  p-value: <2e-16
Q 別々に推定すると、それぞれマイナス(で有意)だった変数。二つ入れるとradの係数が逆転。
なぜか?
plot(Boston)
cor(Boston)
対策1 よく考えて、お互いに相関が高くない(説明変数)を選ぶ。
対策2 類似した変数をまとめる。
2.1 アンケートへの5段階尺度の回答のような場合、相関が高い変数を合計する。
2.2 人口と所得のような単位が異なる場合、そのまま合成すると単位の影響を受けるので、それぞれを平均0、分散1になるように標準化してから合計。
2.3 相関が高い=同じような要因が背景にあると考えて、その要因(因子)を探索的に抽出し、その結果得られた因子得点を用いる。

→因子分析。FactorAnalysis

2.4 相関が高い変数を探索的により少ない成分にまとめる。→主成分分析
2.5 事前に注目する概念、仮説を設定し、概念を測定するための項目(できれば複数)を設定し、構造方程式モデルで推定する。

SEM

#別のデータ
library(MASS)
#インストールしていない場合はインターネットに接続した状態で下記を実行してインストールする。(上ですでにインストールしたはずだが)
install.packages("MASS")
data(Cars93)
Q1 このデータの説明、helpをみて各変数の意味を理解する。
Q2 このデータの記述統計を算出してみる。
Q3 質的データについて 集計表を作成してみる。
例 table(データセット名$変数名)
Q4 データについてヒストグラム、散布図などを描いてみる。どのような特徴がみられるか?
Q5 なにが燃費(MPG.city)を規定するのかを考え、回帰分析によって検定してみる(高速での燃費、価格などは除く)。
Q6.1 上記をLengthで説明してみる。
Q6.2 上記をWidthで説明してみる。
Q6.3 上記をWidth とWidthで説明してみる。Q6.1およびQ6.2の結果とくらべて変化した点はないか?
Q6.4 Q6.3のような変化が生じたのはなぜか?
Q6.5 Q6.3のような問題を回避するために、このデータセットに含まれる変数のうち、燃費に関連する変数を用いて因子分析し、各因子の意味を解釈してください。(Width とWidthは含めること。Manufacturerのようなカテゴリカルな変数ではなく、数値データのみを用いる。Varimax回転するとよい)
Q6.6 Q6.5で得られた因子(得点)を用いて、回帰分析してください。
#別のデータ
library(car)
#インストールしていない場合はインターネットに接続した状態で下記を実行してインストールする。
install.packages("car")
data(Salaries)
Q1 このデータの説明、helpをみて各変数の意味を理解する。
Q2 このデータの記述統計を算出してみる。
Q3 質的データについて 集計表を作成してみる。
例 table(データセット名$変数名)
Q4 データについてヒストグラム、散布図などを描いてみる。どのような特徴がみられるか?
Q5 なにが給与を規定するのかを考え、回帰分析によって検定してみる。