敷居が高い感じがして避けてたRだけど、教科書(http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06783-9)通りやれば基礎的な部分は簡単にできることがわかった。
The R Tips 第2版 データ解析環境Rの基本技・グラフィックス活用集
舟尾 暢男 著
定価 3990円
ひとまず、(重)回帰分析とロジスティクス回帰分析ができれば御の字なので、後者をやってみる。
昔いじったときはデータの読み込みで詰まってしまったけれど、パッケージ導入しなくてもいい方法はcsvファイルでの読み込みだと分かった(というか、STATAやってからcsvファイルがsavから変換するときはベターと知った)。
csvファイルはエクセルファイルから変換できる。見かけは全く同じ。
> hsm <- read.csv("/Users/fumiyau/Desktop/hsm_rev.csv", head=T) #データの読み込み
<- は左の変数に右の関数なりコマンドを代入する演算子(?)
csvファイルを読み込むときは、関数read.csv( )を使う。" "の中には読み込みたいファイルの位置(macだと読み込みたいファイルに右クリック→「情報を見る」より場所:から分かる。)
また、一行目に変数名がある場合はhead = T #Trueという意味 とする。(変数名ではなく、いきなり値から始まる場合は head = F #Falseという意味にする)
これで分析したいデータが読み込めたので、今度は記述統計や相関係数を確認してもいいし、読み込めたかを確認して安心したいときは head( ) #( )内には変数を入力する。(この場合は、hsm) head (hsm, 4)などのように指定しなければ、6行分の変数ごとのデータが出る。
id gender cedu medu chi_num mgakureki fgakureki incomelog edupay senmon white inde sib_dc1 sb_dc2 sen_cho whi_cho ind_cho
1 10136304 1 1 1 2 1 1 8.9 3.3 0 1 0 0 1 0 0 0
2 10159014 0 1 0 3 0 NA 8.9 2.7 0 1 0 0 1 0 0 0
3 10193524 0 1 0 2 0 1 8.9 3.4 0 1 0 0 1 0 0 0
4 10194335 1 0 0 3 0 0 8.3 NA 0 0 0 0 1 0 0 0
みたいな感じ。今回はロジスティクス回帰分析に集中する。
> result <- summary( glm (medu ~ chonan + senmon + white + inde + chi_num, data = hsm, family=binomial)) # resultという変数にsummary関数を代入。そのsummary関数はmeduを従属変数とする二項ロジスティクス回帰分析(以後LR)を実行する関数をもとにする。
まず、LRを実行するのはglm関数。( xxx ~ yyy )としたときに、xが従属変数(この場合は母親の子どもへの大学進学期待を1とする二値変数)、yが独立変数。独立変数を複数用意したければ yyy + zzzのように + の演算子を使う。変数が終わった後に、使用するデータを data = で指定する。最後に、従属変数の分布を指定する引数 familyで、この場合は二項分布 binomialを指定する。
(重)回帰分析の場合、hsm$chi_num <= 3 and…のように、関数の中で使用するデータの範囲を指定できるのですがLRの時はできないので困っています。しょうがないのでcsvファイルにフィルタをかけて分析に不要な値は削除したデータを用いました。
> result #分析結果(この場合、結果の概要が分かるsummary関数)をみる。
Call:
glm(formula = medu ~ chonan + senmon + white + inde + chi_num,
family = binomial, data = hsm)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.2596 -1.1271 0.6267 0.8340 1.2286
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.3771 0.3439 4.005 6.21e-05 ***
chonan 0.4688 0.1876 2.498 0.012475 *
senmon 1.5937 0.2425 6.572 4.95e-11 ***
white 0.6496 0.2098 3.097 0.001958 **
inde 0.4979 0.2639 1.886 0.059228 .
chi_num -0.4989 0.1409 -3.541 0.000398 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 913.29 on 780 degrees of freedom
Residual deviance: 840.35 on 775 degrees of freedom
AIC: 852.35
Number of Fisher Scoring iterations: 4
サンプルが5増やすかどうかで結果が結構違ってきます。客観性とは何でしょうか。。。
No comments:
Post a Comment