No.20218 重回帰分析に投入する変数(ダミー変数)について  【bluestar】 2013/09/09(Mon) 18:02

統計初学者で基本的な質問で失礼いたします。過去ログで探したのですが,類似の質問を探すことができなかったので,ここで質問させていただきます。
ある職場の労働者に調査票調査を行いました(サンプル数200)。労働意欲を従属変数,属性や意識の変数を独立変数として重回帰分析をしようとしています。
正規雇用か非正規雇用かを0,1のダミー変数にして統制変数として投入しようとしたのですが,データを見ると,非正規雇用の割合が2%しかありませんでした(残りの98%が正規雇用)。
このように2値データの各カテゴリー度数が偏っている場合には,変数として投入するのは不適切なのでしょうか。
ご教示いただけると幸いです。

No.20219 Re: 重回帰分析に投入する変数(ダミー変数)について  【青木繁伸】 2013/09/09(Mon) 18:39

偏っているというのと不適切であるというのは無関係です。
どのように偏っているかが問題になることはあるでしょう。
たとえば,全体での 1 の割合が同じでも,ダミー変数と従属変数の相関がどのようであるかによって,結果(解釈)は変わるでしょう?
やってみて,その結果を吟味するのです。以下の 3 つの場合の結果を比較しましょう。
> library(MASS)
> set.seed(123)
> d <- mvrnorm(1000, mu=rep(0,2), Sigma=matrix(c(1, 0.7, 0.7, 1), 2), empirical=TRUE)
> y <- d[,1]

まず最初は,x1=1 の割合が0.015 であるような独立変数の場合

> x1 <- (d[,2] > qnorm(0.98))+0
> table(x1)
x1
0 1
985 15 # x1=1 が 1000 人中 15 人しかいない

> tapply(y, x1, mean)
0 1
-0.02579547 1.69390253 # 平均値にはおおきな違いがある

> summary(lm(y~x1))

Call:
lm(formula = y ~ x1)

Residuals:
Min 1Q Median 3Q Max
-3.3766 -0.6795 0.0060 0.6159 2.7694

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.02580 0.03117 -0.827 0.408
x1 1.71970 0.25453 6.756 2.4e-11 # 偏回帰係数は有意

Residual standard error: 0.9784 on 998 degrees of freedom
Multiple R-squared: 0.04374, Adjusted R-squared: 0.04278 # もっとも,決定係数は低すぎる
F-statistic: 45.65 on 1 and 998 DF, p-value: 2.402e-11

もう一つの独立変数 x2 で x2=1 の割合が0.015 であるような場合

> x2 <- sample(0:1, 1000, replace=TRUE, prob=c(0.98, 0.02))
> table(x2)
x2
0 1
985 15 # x2=1 が 1000 人中 15 人しかいない

> tapply(y, x2, mean)
0 1
-0.001721112 0.113019658 # 平均値の差は大きくはない

> summary(lm(y~x2))

Call:
lm(formula = y ~ x2)

Residuals:
Min 1Q Median 3Q Max
-3.4006 -0.6942 -0.0009 0.6032 3.2653

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.001721 0.031876 -0.054 0.957
x2 0.114741 0.260262 0.441 0.659 # 偏回帰係数は有意ではない

Residual standard error: 1 on 998 degrees of freedom
Multiple R-squared: 0.0001947, Adjusted R-squared: -0.0008071 # 決定係数は問題外に低い
F-statistic: 0.1944 on 1 and 998 DF, p-value: 0.6594

最後の例 x3=0 と x3=1 となるのがほぼ同じくらいのとき

> x3 <- sample(0:1, 1000, replace=TRUE, prob=c(0.5, 0.5))
> table(x3)
x3
0 1
493 507 # x3=1 が 1000 人中 507 人いる

> tapply(y, x3, mean)
0 1
-0.009118312 0.008866525 # 平均値の差もほとんどない

> summary(lm(y~x3))

Call:
lm(formula = y ~ x3)

Residuals:
Min 1Q Median 3Q Max
-3.4112 -0.6868 -0.0025 0.6070 3.2727

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.009118 0.045058 -0.202 0.840
x3 0.017985 0.063281 0.284 0.776 # 偏回帰係数は有意ではない

Residual standard error: 1 on 998 degrees of freedom
Multiple R-squared: 8.093e-05, Adjusted R-squared: -0.000921 # 決定係数は問題外に低い
F-statistic: 0.08077 on 1 and 998 DF, p-value: 0.7763

No.20272 Re: 重回帰分析に投入する変数(ダミー変数)について  【bluestar】 2013/10/04(Fri) 16:08

お礼が遅くなり誠に申し訳ありません。
実際に投入してみて結果を検討すればよいのですね。
ご教示いただきありがとうございました。

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