No.06838 分散に対する説明力  【Q6Q】 2008/06/17(Tue) 19:25

R初心者です。どうかご教授下さい。

数的変量Yに対して,質的変量X1(カテゴリー1,2,3)と数的変量X2とX3を用いた回帰分析で

数的変量Yの総分散に対してX1がどれだけ寄与しているのかを求めたいののですが,雛形をご紹介願えないでしょうか?

またX1はダミー変数を利用して分割すると

カテゴリー1 は 1 1
カテゴリー2 は 1 0
カテゴリー3 は 0 0 と分割できます。

0 1 と 1 0は区別なく同じカテゴリー2に含まれます。

No.06840 Re: 分散に対する説明力  【青木繁伸】 2008/06/17(Tue) 21:31

> またX1はダミー変数を利用して分割すると
> カテゴリー1 は 1 1
> カテゴリー2 は 1 0
> カテゴリー3 は 0 0 と分割できます。

普 通はそう言う風にはしません。でも,それはさておき,X1 は,数値 1, 2, 3 として入力されているのですね。上の書きようだとカテゴリー3を基準にするように読み取れるのですがそれでよいでしょうか?そのようにするとちょっと余計 なことをしないといけないのですけど。1 を基準にする方が良いと思いますので,以下のように,すればよいでしょう。要するに,X1 を
factor(X1, そのほかの引数)
というようにするんです。factor のオンラインヘルプを参照するとよいでしょう。例のようにすると X1=1 が基準とされ(回帰係数が0とされる),X1=2, X1=3 がそれに対していくつの重みになるかが計算されます。
> set.seed(123)
> df <- data.frame(X1=sample(1:3, 10, replace=TRUE), X2=rnorm(10),
+ X3=rnorm(10), y=rnorm(10))
> df
X1 X2 X3 y
1 1 1.7150650 1.7869131 -1.6866933
2 3 0.4609162 0.4978505 0.8377870
3 2 -1.2650612 -1.9666172 0.1533731
4 3 -0.6868529 0.7013559 -1.1381369
5 3 -0.4456620 -0.4727914 1.2538149
6 1 1.2240818 -1.0678237 0.4264642
7 2 0.3598138 -0.2179749 -0.2950715
8 3 0.4007715 -1.0260044 0.8951257
9 2 0.1106827 -0.7288912 0.8781335
10 2 -0.5558411 -0.6250393 0.8215811
> ans <- lm(y~factor(X1)+X2+X3, df)
> summary(ans)

Call:
lm(formula = y ~ factor(X1) + X2 + X3, data = df)

Residuals:
1 2 3 4 5 6 7 8
-0.1354 0.4739 -0.4666 -0.6245 0.7302 0.1354 -0.6220 -0.5796
9 10
0.3232 0.7655

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.2862 0.8667 -1.484 0.1979
factor(X1)2 1.2218 1.0461 1.168 0.2955
factor(X1)3 1.7346 0.9648 1.798 0.1321
X2 0.6309 0.4879 1.293 0.2525
X3 -0.7538 0.2897 -2.602 0.0481 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.7504 on 5 degrees of freedom
Multiple R-squared: 0.6685, Adjusted R-squared: 0.4033
F-statistic: 2.521 on 4 and 5 DF, p-value: 0.169

No.06841 Re: 分散に対する説明力  【Q6Q】 2008/06/18(Wed) 19:28

ありがとうございます。大変勉強になります。

X1は, 2個の椅子と考えてください。

     カテゴリー1には,A1が二個座っている
     カテゴリー2には A1が一個とA2が一個座っている。
     カテゴリー3には A2が2個座っている。

X1によって母集団を3群に別けると
Yの平均について分散分析を行うと
       カテゴリー1とカテゴリー2
       カテゴリー1とカテゴリー3 の間で,それぞれ有意差が出ます。
       カテゴリー2と3の間では 有意差が出ません。

カテゴリー1の平均値>カテゴリー2の平均値>(有意ではないが傾向としては)カテゴリー3の平均値となります。

しかし個別のデータを見ると,カテゴリー間の逆転も決して少なくないため,
X1がYの値に対して,どの程度の影響力があるのかを評価したいのです。

この場合もカテゴリー3を基準とするので,よろしいでしょうか?
母集団の中ではカテゴリー2が多数派です。

> ans <- lm(y~factor(X1)+X2+X3, df)

について

> ans <- lm(y~factor X1+(X2)+X3, df)

に置きなおすと,結果が見た目上大きく違ってきます。

No.06842 Re: 分散に対する説明力  【青木繁伸】 2008/06/18(Wed) 21:23

> > ans <- lm(y~factor X1+(X2)+X3, df)

って,なんですか?そんなの動かないと思いますよ(エラーメッセージが出るでしょ?)。

factor をちゃんと理解しての話ではないと思いますが?

No.06843 Re: 分散に対する説明力  【青木繁伸】 2008/06/18(Wed) 21:37

どれを基準にしても予測値は同じになる予測式が得られます。
解釈が簡単になるように,どれをベースラインにするかは,factor によって,分析者が確定することができます(分析者が指定すべきものです)。

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