No.17353 はじめてのロジスティック回帰分析  【R初心者】 2012/08/24(Fri) 19:19

Rでロジスティック回帰分析を行いたいです。はじめてです。
対のデータの単相関です。
どのようにRを使うのでしょうか?
Rのプログラム,出力結果から,相関に有意性があるのかどうかを見るのは,どこを見るのかを,教えてください。

No.17354 Re: はじめてのロジスティック回帰分析  【青木繁伸】 2012/08/24(Fri) 21:02

質問が抽象的すぎて,適切な解答ができません。

> 対のデータの単相関です。
> どのようにRを使うのでしょうか?

どんなデータなんですか?
よほど大きなデータでなければ,実際のデータを示せばよいと思いますが。

> Rのプログラム,出力結果から,相関に有意性があるのかどうかを見るのは,どこを見るのかを,教えてください。

実際に,何らかの分析を既に行ったのでしょうか?
分析結果を示せば何とかなるかも。

No.17355 Re: はじめてのロジスティック回帰分析  【R初心者】 2012/08/24(Fri) 22:35

金曜日の晩なのに,ありがとうございます。
350位の連続データがあり,その値に対し1と0の値が存在します。
連続データは,(max-min)/10くらいで,10グループにわけ,そのグループごとに,1が存在する割合を計算して,その割合と,グループでの連続データの中央値の間で,単相関をやる方法で,関連があるのかどうか,しらべるしか,方法は無いと思っていました。
 グループ分けして行った場合p<0.001くらいで関連が認められるという結果もありました。
が,無理にグループを作成しなくても,ロジスティック回帰で,関連性が調べられるかと,思ったわけです。
 この方法で,難点なのは,各グループの母数が,同じくらいではなく,連続データが,10グループでの母数が,ヒストグラムでは,ほぼ正規分布するようなものであります。

No.17356 Re: はじめてのロジスティック回帰分析  【R初心者】 2012/08/24(Fri) 22:47

もう少し説明しますと,350位のデータは,全国の地域のデータで,その地域の別の項目で,全国の値と有意差検定したとき有意に高いなら1,そうでないなら0とします。
試験的なデータをお示ししたいのですが,来週の月曜になります。

No.17357 Re: はじめてのロジスティック回帰分析  【R初心者】 2012/08/25(Sat) 10:24

20個のデータで以下です。
39.2964, 0
43.2808, 1
39.1153, 0
38.9163, 0
38.2939, 0
45.0221, 1
38.5792, 0
35.7308, 0
41.1779, 1
39.0925, 0
39.0529, 0
35.9808, 0
38.5518, 0
39.507 , 0
40.0184, 1
39.4895, 0
42.835 , 1
38.7532, 0
37.0281, 0
41.0135, 1

No.17358 Re: はじめてのロジスティック回帰分析  【青木繁伸】 2012/08/25(Sat) 17:18

投稿されたデータは分析できないので,ちょっと変更して分析します。
d <- data.frame(x = c(43.2808, 39.1153, 38.9163, 38.2939, 45.0221, 38.5792, 
35.7308, 41.1779, 39.0925, 39.0529, 38.5518, 35.9808, 39.507, 40.0184, 39.4895,
42.835, 38.7532, 37.0281, 41.0135), y = c(1, 0, 0, 0, 1, 0, 0, 1, 0, 0,
0, 0, 0, 1, 0, 1, 0, 0, 0))
データはこんな風です。実際にはデータは read.table 関数で読み込みます。
d
## x y
## 1 43.28 1
## 2 39.12 0
## 3 38.92 0
## 4 38.29 0
## 5 45.02 1
## 6 38.58 0
## 7 35.73 0
## 8 41.18 1
## 9 39.09 0
## 10 39.05 0
## 11 38.55 0
## 12 35.98 0
## 13 39.51 0
## 14 40.02 1
## 15 39.49 0
## 16 42.84 1
## 17 38.75 0
## 18 37.03 0
## 19 41.01 0
分析は glm 関数で行います。
ans <- glm(y ~ x, d, family = binomial)
結果は summary 関数で表示します。
summary(ans)
##
## Call:
## glm(formula = y ~ x, family = binomial, data = d)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.4968 -0.2828 -0.1680 0.0037 1.7498
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -82.22 42.57 -1.93 0.053 .
## x 2.02 1.06 1.91 0.056 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 21.9007 on 18 degrees of freedom
## Residual deviance: 6.7251 on 17 degrees of freedom
## AIC: 10.73
##
## Number of Fisher Scoring iterations: 7
##
変数xが従属変数にどのように関連しているかは
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -82.22 42.57 -1.93 0.053 .
## x 2.02 1.06 1.91 0.056 .
のところを見ます。Estimate が係数,Pr(>|z|) が有意確率です。

その他,Rの使い方,関数の使い方,結果の読み方については,然るべき教科書を参照してください。掲示版では教えきれません。

No.17359 Re: はじめてのロジスティック回帰分析  【R初心者】 2012/08/25(Sat) 18:02

ありがとうございます。試してみます。

No.17400 Re: はじめてのロジスティック回帰分析  【R初心者】 2012/08/30(Thu) 16:11

分析ができました。
今後,大量のデータ分析を行う場合,いちいちRを使用するのではなく,Visual Basic言語などで,計算する方法があれば,教えてください。

No.17401 Re: はじめてのロジスティック回帰分析  【青木繁伸】 2012/08/30(Thu) 17:09

> 今後,大量のデータ分析を行う場合,いちいちRを使用するのではなく,Visual Basic言語などで,計算する方法があれば,教えてください。

発想が逆でしょう。
Visual Basic なんて,時代遅れですよ。
大量データを Visual Basic で扱うと思うだけで,ぞっとする。

● 「統計学関連なんでもあり」の過去ログ--- 045 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る