#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 なにが給与を規定するのかを考え、回帰分析によって検定してみる。