● 目次
1. 単回帰分析 : 予測等に使う、連続変量の関係
2. 「体重の大きい者を除外」して実行するには?
3. 有効桁数に注意せよ : どこまでが「意味ある桁」か?
4. 重回帰分析 : 2変量以上の説明する変量(説明変量)で 1変量(目的変量)を説明
5. 特定グループでの解析
6. [要点] 解析する上での注意点
7. 誤用?!
8. 4つの尺度と回帰分析
9. 回帰分析における変数選択、総当たり法
10. 次回は、...
● 回帰分析 : 連続変量の予測
/* Lesson 03-2 */
/* File Name = les0302.sas 10/16/18 */
options linesize=72 pagesize=20;
options nocenter linesize=78 pagesize=30;
proc printto log = 'Kougi/les0302_log.txt'
print = 'Kougi/les0302_Results.txt' new;
ods listing gpath='Kougi/SAS_ODS99';
data gakusei;
infile 'Kougi/all07au.txt'
firstobs=2;
input sex $ shintyou taijyuu kyoui
jitaku $ kodukai carryer $ tsuuwa;
if sex^='M' & sex^='F' then delete;
proc print data=gakusei(obs=10);
run;
proc reg data=gakusei; : 回帰分析
model taijyuu=shintyou; : 変量を指定
output out=outreg1 predicted=pred1 residual=resid1; : 結果項目の保存
run; :
:
proc print data=outreg1(obs=15); : 表示してみる
run; :
:
proc plot data=outreg1; : 散布図を描く
plot taijyuu*shintyou/vaxis=20 to 100 by 20; : 体重と身長(縦軸指定)
plot pred1*taijyuu; : 予測値と観測値
plot resid1*pred1 /vref=0; : 残差と予測値(残差解析)(水平軸指定)
plot resid1*shintyou/vref=0; : 残差と説明変数(残差解析)
plot resid1*taijyuu /vref=0; : 残差と目的変数(残差解析)
run; :
:
proc univariate data=outreg1 plot normal; : 残差を正規プロットして確かめる
var resid1; :
run; :
[備考] 上記のコロン以降は説明のためのものであり、
SAS のプログラムではありません。
[補足] proc plot
の下に以下の行を追加した方がより正確ではある。
欠損値を含むデータを解析対象から除外する事を指示する命令文である。
「欠損値です」の表示が無くなるだけで、得られる図は同じ(欠損値は描画できないから)。
試しに追加する/しないの両方で実行してみよ。
where shintyou^=. and taijyuu^=.;
2018年10月15日 月曜日 20時40分18秒 86
Obs sex shintyou taijyuu kyoui jitaku kodukai carryer tsuuwa
1 F 145.0 38.0 . J 10000 .
2 F 146.7 41.0 85 J 10000 Vodafone 6000
3 F 148.0 42.0 . J 50000 .
4 F 148.0 43.0 80 J 50000 DoCoMo 4000
5 F 148.9 . . J 60000 .
6 F 149.0 45.0 . G 60000 .
7 F 150.0 46.0 86 40000 .
8 F 151.0 45.0 . J 20000 docomo 5000
9 F 151.0 50.0 . G 60000 J-PHONE .
10 F 151.7 41.5 80 J 35000 .
2018年10月15日 月曜日 20時40分18秒 87
REG プロシジャ
モデル : MODEL1
従属変数 : taijyuu
読み込んだオブザベーション数 370
使用されたオブザベーション数 325
欠損値を含むオブザベーション数 45
分散分析
要因 自由度 平方和 平均平方 F 値 Pr > F
Model 1 14055 14055 318.56 <.0001
Error 323 14251 44.12105
Corrected Total 324 28306
Root MSE 6.64237 R2 乗 0.4965
従属変数の平均 58.78092 調整済み R2 乗 0.4950
変動係数 11.30021
2018年10月15日 月曜日 20時40分18秒 88
REG プロシジャ
モデル : MODEL1
従属変数 : taijyuu
パラメータの推定
パラメータ
変数 自由度 推定値 標準誤差 t 値 Pr > |t|
Intercept 1 -79.35152 7.74804 -10.24 <.0001
shintyou 1 0.81883 0.04588 17.85 <.0001
2018年10月15日 月曜日 20時40分20秒 89
Obs sex shintyou taijyuu kyoui jitaku kodukai carryer tsuuwa pred1 resid1
1 F 145.0 38.0 . J 10000 . 39.3789 -1.3789
2 F 146.7 41.0 85 J 10000 Vodafone 6000 40.7709 0.2291
3 F 148.0 42.0 . J 50000 . 41.8354 0.1646
4 F 148.0 43.0 80 J 50000 DoCoMo 4000 41.8354 1.1646
5 F 148.9 . . J 60000 . 42.5724 .
6 F 149.0 45.0 . G 60000 . 42.6542 2.3458
7 F 150.0 46.0 86 40000 . 43.4731 2.5269
8 F 151.0 45.0 . J 20000 docomo 5000 44.2919 0.7081
9 F 151.0 50.0 . G 60000 J-PHONE . 44.2919 5.7081
10 F 151.7 41.5 80 J 35000 . 44.8651 -3.3651
11 F 152.0 35.0 77 J 60000 DoCoMo 2000 45.1107 -10.1107
12 F 152.0 43.0 . J 20000 au 3500 45.1107 -2.1107
13 F 152.0 44.0 . 45000 DoCoMo 4000 45.1107 -1.1107
14 F 153.0 41.0 . J 125000 No . 45.9296 -4.9296
15 F 153.0 42.0 . G 0 Vodafone 1000 45.9296 -3.9296
2018年10月15日 月曜日 20時40分20秒 90
: taijyuu*shintyou. A=1, B=2, ...
taijyuu |
100 + A
| A
| A A
| A
80 + A A AAAA A
| B A A B A A
| AAB EDB C AAA F A A B
| B B BC AGC BBB DDCB CEA A A
60 + A AA BB AACCABIFBHIFACCDC AAA AA
| A B EC AA ECHGACDF EBB DB A
| A A CDAC DE DDB CFBAA AA A A
| A AAA BABA BAB AB ABA A
40 + A AA A B B
| A
|
|
20 +
|
--+------------+------------+------------+------------+------------+--
140 150 160 170 180 190
shintyou
NOTE: 45 obs が欠損値です。
2018年10月15日 月曜日 20時40分20秒 91
: pred1*taijyuu. A=1, B=2, ...
80 +
予 |
測 |
値 | A
| A A B A
t | A BABCB G A A
a | BDAA EBB A A B A A
i | A B BBADBCACBBA A AB
j | A BBDBCIJBBB ECC A A
y 60 + AAABHCDHFDBE BAA A A A
u | A DCCGCDABA D AA
u | BEACABDAAA ABA A
| BB HC A BB
| DAGDAAACAAA
| BA B CB A A A
| B ABABAA A
| A AAAB A
| AA A
40 + A A
---+-------------+-------------+-------------+-------------+--
20 40 60 80 100
taijyuu
NOTE: 45 obs が欠損値です。
2018年10月15日 月曜日 20時40分20秒 92
: resid1*pred1. A=1, B=2, ...
40 +
|
| A
| A A
|
| A A
残 20 + A
差 | B A A
| A A AA B
| A A A AA A BDA A A A
| A A B ABAA BBACAACAA A A
| A A A A A CA A AACAGABABCAA AF
0 +-------------A-AB---AABABDACADBDA-C-BDEAEGFDCCBCCA---A--A------------
| AABA B BCC ADBB DEDBGEBFDCCB BE AA
| BA B CA C AACAABCBAABBBA AAA A
| A DA AC BC AA AAA
| A A
|
-20 +
--+------------+------------+------------+------------+------------+--
30 40 50 60 70 80
予測値 taijyuu
NOTE: 45 obs が欠損値です。
2018年10月15日 月曜日 20時40分20秒 93
: resid1*shintyou. A=1, B=2, ...
40 +
|
| A
| A A
|
| A A
残 20 + A
差 | B A A
| A A A AAA
| A A A A A A B DA A A A
| A A B ABA A BB ACA ACA A A A
| AA A A A CA AAAC AFB BAB CAA A F
0 +--------A-AB---A-AAB-BDAC-ADB-DA--CBDCBAEFAFDBACBCC-A---A---A--------
| AAB A B B DB ADB BCFD BGDABFD CCB BE A A
| BA B ABA CAABAAAB CBA ABBB AAA A A
| A DA A C B CA A A AA
| A A
|
-20 +
--+------------+------------+------------+------------+------------+--
140 150 160 170 180 190
shintyou
NOTE: 45 obs が欠損値です。
2018年10月15日 月曜日 20時40分20秒 94
: resid1*taijyuu. A=1, B=2, ...
40 +
|
| A
| A A
|
| A A
残 20 + A
差 | AA B
| A A BB
| A AA AA ACD A A A
| A BABAAAH EB B
| B AAAAC ABDEDCBDFA
0 +---------------A-BAACAGFDD-GDEIMDAGBAAA----------------------
| CAADAE ICEMCFLDCBC B
| BA DCBADBBDDBDAAAA
| A ADB DBB ABA
| A A
|
-20 +
---+-------------+-------------+-------------+-------------+--
20 40 60 80 100
taijyuu
NOTE: 45 obs が欠損値です。
2018年10月15日 月曜日 20時40分20秒 95
UNIVARIATE プロシジャ
変数 : resid1 (残差)
モーメント
N 325 重み変数の合計 325
平均 0 合計 0
標準偏差 6.63210957 分散 43.9848774
歪度 1.42132974 尖度 4.0008373
無修正平方和 14251.1003 修正済平方和 14251.1003
変動係数 . 平均の標準誤差 0.36788325
基本統計量
位置 ばらつき
平均 0.00000 標準偏差 6.63211
中央値 -1.02372 分散 43.98488
最頻値 -2.30618 範囲 47.54351
四分位範囲 6.73181
Note: 3個の最頻値があります(度数: 5)。表では最頻値のなかで最も小さな値を表示します。
2018年10月15日 月曜日 20時40分20秒 96
UNIVARIATE プロシジャ
変数 : resid1 (残差)
位置の検定 H0: Mu0=0
検定 -統計量- ------p 値-------
Student の t 検定 t 0 Pr > |t| 1.0000
符号検定 M -22.5 Pr >= |M| 0.0145
符号付順位検定 S -3248.5 Pr >= |S| 0.0552
正規性の検定
検定 --統計量--- ------p 値-------
Shapiro-Wilk W 0.915825 Pr < W <0.0001
Kolmogorov-Smirnov D 0.109794 Pr > D <0.0100
Cramer-von Mises W-Sq 0.914603 Pr > W-Sq <0.0050
Anderson-Darling A-Sq 5.307447 Pr > A-Sq <0.0050
2018年10月15日 月曜日 20時40分20秒 97
UNIVARIATE プロシジャ
変数 : resid1 (残差)
分位点 (定義 5)
水準 分位点
100% 最大値 33.59967
99% 22.24447
95% 11.59967
90% 8.24447
75% Q3 2.69382
50% 中央値 -1.02372
25% Q1 -4.03799
10% -7.28364
5% -8.57436
1% -10.94384
0% 最小値 -13.94384
2018年10月15日 月曜日 20時40分20秒 98
UNIVARIATE プロシジャ
変数 : resid1 (残差)
極値
----最小値---- ----最大値----
値 Obs 値 Obs
-13.9438 282 21.6938 267
-13.4474 346 22.2445 125
-11.4873 229 28.5997 326
-10.9438 284 29.2235 181
-10.9438 283 33.5997 327
欠損値
---パーセント---
欠損値 カウント 全体 欠損値
. 45 12.16 100.00
[注意] 誤差は「説明変量」の軸と垂直に取ることに注意せよ。 誤差は測定時に混入していると考えてモデルが構築されているから。
[注意] 「正規性を乱している者は何でも除外してかまわない」というわけではない。 今回の場合は、元データに戻ったところ、体育会系のずんぐりした者であったため、 普通の大学生とは異なる性質を有していると判断し除外対象とした。 除外する場合にはその根拠を明確にしないと、「恣意的な解析」と言われかねないことに注意せよ。
/* Lesson 03-3 */
/* File Name = les0303.sas 10/16/18 */
options linesize=72 pagesize=20;
options nocenter linesize=78 pagesize=30;
proc printto log = 'Kougi/les0303_log.txt'
print = 'Kougi/les0303_Results.txt' new;
ods listing gpath='Kougi/SAS_ODS99';
data gakusei;
infile 'Kougi/all07au.txt'
firstobs=2;
input sex $ shintyou taijyuu kyoui
jitaku $ kodukai carryer $ tsuuwa;
if sex^='M' & sex^='F' then delete;
if shintyou=. | taijyuu=. then delete; : 欠損値データを除外
proc print data=gakusei(obs=10);
run;
proc corr data=gakusei;
where taijyuu<85; : 対象データを絞る
run;
proc reg data=gakusei;
model taijyuu=shintyou;
where taijyuu<85; : 対象データを絞る
output out=outreg1 predicted=pred1 residual=resid1;
run;
proc print data=outreg1(obs=15);
run;
proc plot data=outreg1;
where taijyuu<85; : 対象データを絞る
plot taijyuu*shintyou/vaxis=20 to 100 by 20;
plot pred1*taijyuu;
plot resid1*pred1 /vref=0;
plot resid1*shintyou/vref=0;
plot resid1*taijyuu /vref=0;
plot resid1*(pred1 shintyou taijyuu)/vref=0; : まとめて指定することも可
run;
proc univariate data=outreg1 plot normal;
var resid1;
run;
2018年10月15日 月曜日 20時38分36秒 69
CORR プロシジャ
5 変数 : shintyou taijyuu kyoui kodukai tsuuwa
単純統計量
変数 N 平均 標準偏差 合計
shintyou 321 168.59346 8.02514 54119
taijyuu 321 58.34984 8.54729 18730
kyoui 111 85.74775 7.95609 9518
kodukai 303 49107 51751 14879500
tsuuwa 132 6742 4470 890002
単純統計量
変数 最小値 最大値
shintyou 145.00000 186.00000
taijyuu 35.00000 84.00000
kyoui 46.00000 110.00000
kodukai 0 350000
tsuuwa 0 30000
2018年10月15日 月曜日 20時38分36秒 70
CORR プロシジャ
Pearson の相関係数
H0: Rho=0 に対する Prob > |r|
オブザベーション数
shintyou taijyuu kyoui kodukai tsuuwa
shintyou 1.00000 0.72880 0.28729 0.06533 -0.05960
<.0001 0.0022 0.2569 0.4972
321 321 111 303 132
taijyuu 0.72880 1.00000 0.38406 0.06408 -0.04543
<.0001 <.0001 0.2662 0.6050
321 321 111 303 132
kyoui 0.28729 0.38406 1.00000 -0.28125 -0.17722
0.0022 <.0001 0.0033 0.2940
111 111 111 107 37
kodukai 0.06533 0.06408 -0.28125 1.00000 0.26949
0.2569 0.2662 0.0033 0.0021
303 303 107 303 128
tsuuwa -0.05960 -0.04543 -0.17722 0.26949 1.00000
0.4972 0.6050 0.2940 0.0021
132 132 37 128 132
2018年10月15日 月曜日 20時38分36秒 71
REG プロシジャ
モデル : MODEL1
従属変数 : taijyuu
読み込んだオブザベーション数 321
使用されたオブザベーション数 321
分散分析
要因 自由度 平方和 平均平方 F 値 Pr > F
Model 1 12417 12417 361.39 <.0001
Error 319 10961 34.35989
Corrected Total 320 23378
Root MSE 5.86173 R2 乗 0.5311
従属変数の平均 58.34984 調整済み R2 乗 0.5297
変動係数 10.04584
2018年10月15日 月曜日 20時38分36秒 72
REG プロシジャ
モデル : MODEL1
従属変数 : taijyuu
パラメータの推定
パラメータ
変数 自由度 推定値 標準誤差 t 値 Pr > |t|
Intercept 1 -72.51537 6.89174 -10.52 <.0001
shintyou 1 0.77622 0.04083 19.01 <.0001
2018年10月15日 月曜日 20時38分37秒 73
Obs sex shintyou taijyuu kyoui jitaku kodukai carryer tsuuwa pred1 resid1
1 F 145.0 38.0 . J 10000 . 40.0362 -2.0362
2 F 146.7 41.0 85 J 10000 Vodafone 6000 41.3558 -0.3558
3 F 148.0 42.0 . J 50000 . 42.3648 -0.3648
4 F 148.0 43.0 80 J 50000 DoCoMo 4000 42.3648 0.6352
5 F 149.0 45.0 . G 60000 . 43.1411 1.8589
6 F 150.0 46.0 86 40000 . 43.9173 2.0827
7 F 151.0 45.0 . J 20000 docomo 5000 44.6935 0.3065
8 F 151.0 50.0 . G 60000 J-PHONE . 44.6935 5.3065
9 F 151.7 41.5 80 J 35000 . 45.2368 -3.7368
10 F 152.0 35.0 77 J 60000 DoCoMo 2000 45.4697 -10.4697
11 F 152.0 43.0 . J 20000 au 3500 45.4697 -2.4697
12 F 152.0 44.0 . 45000 DoCoMo 4000 45.4697 -1.4697
13 F 153.0 41.0 . J 125000 No . 46.2459 -5.2459
14 F 153.0 42.0 . G 0 Vodafone 1000 46.2459 -4.2459
15 F 153.0 46.5 87 G 10000 . 46.2459 0.2541
2018年10月15日 月曜日 20時38分37秒 74
: taijyuu*shintyou. A=1, B=2, ...
taijyuu |
100 +
|
|
| A
80 + A A AAAA A
| B A A B A A
| AAB EDB C AAA F A A B
| B B BC AGC BBB DDCB CEA A A
60 + A AA BB AACCABIFBHIFACCDC AAA AA
| A B EC AA ECHGACDF EBB DB A
| A A CDAC DE DDB CFBAA AA A A
| A AAA BABA BAB AB ABA A
40 + A AA A B B
| A
|
|
20 +
|
--+------------+------------+------------+------------+------------+--
140 150 160 170 180 190
shintyou
2018年10月15日 月曜日 20時38分37秒 75
: pred1*taijyuu. A=1, B=2, ...
|
予 80 +
測 |
値 |
| A
t 70 + AA A A B A A
a | A BA CB CA F B
i | AABAEAAAA ACCB A C
j | A BB BABB JDBDA D AEABA A AA A A
y 60 + B ACA CFBDAIBHDBACA B CAB A A
u | AD A ECE GCDCBB CA DA A A A
u | A C DBAA D A A AAB A A
| C CB CACDA C A AA A
50 + A BA AEA AA A A
| B A C CABA A
| A ABAA AB B A
| AAA A
40 + A
|
--+----------+----------+----------+----------+----------+----------+--
30 40 50 60 70 80 90
taijyuu
2018年10月15日 月曜日 20時38分37秒 76
: resid1*pred1. A=1, B=2, ...
40 +
|
|
|
|
| A A
残 20 + A
差 | B A
| A A A AAAA
| A A A AB AABDA A A
| A A AA ABA BCABAACAAA B A
| AA A A A CA AAABAFEAB AEBBA F
0 +----AB---AABABDACAAB-DA-DBECCHCGD-DABBBB--A---A--------------
| A AAAA AABCF ADBACEECDDDHACCCC AEAA A A
| A BA B ABA CAAAAABCA BB CAAA A
| A DA AA BBA AA
| A A
|
-20 +
---+-------------+-------------+-------------+-------------+--
40 50 60 70 80
予測値 taijyuu
2018年10月15日 月曜日 20時38分37秒 77
: resid1*shintyou. A=1, B=2, ...
40 +
|
|
|
|
| A A
残 20 + A
差 | B A
| A A A AAAA
| A A A A B AAB DA A A
| A A B ABA BC ABA ACB A AA A
| AA A A A CA AAAB AFE BAA EBBA F
0 +----------AB---A-AAB-BDAC-AAB-DA--DBECBAHCAFDCAABBB-B---A---A--------
| A AAA A B B DE ADB ACEE CDDADGD CBD AEA A A A
| A BA B ABA CAAAA AB CA BB C AAA A
| A DA A A B BA AA
| A A
|
-20 +
--+------------+------------+------------+------------+------------+--
140 150 160 170 180 190
shintyou
2018年10月15日 月曜日 20時38分37秒 78
: resid1*taijyuu. A=1, B=2, ...
40 +
|
|
|
|
| A A
残 20 + A
差 | A A A
| A A AAC
| A A A B A AACBB A A
| A B AB AB FB DABA B
| AA AA AA C A B GDCAEACD F
0 +-------------AAAA-AC-DCC-DDA-FBDFBIEFEA-BCA--A-A---------------------
| A BAA BBABCCEDDE GHCCANBACC B B
| ABA CABC A DCA C BBACA A
| A AD B BB A AA
| A A
|
-20 +
--+----------+----------+----------+----------+----------+----------+-
30 40 50 60 70 80 90
taijyuu
2018年10月15日 月曜日 20時38分37秒 79
: resid1*pred1. A=1, B=2, ...
40 +
|
|
|
|
| A A
残 20 + A
差 | B A
| A A A AAAA
| A A A AB AABDA A A
| A A AA ABA BCABAACAAA B A
| AA A A A CA AAABAFEAB AEBBA F
0 +----AB---AABABDACAAB-DA-DBECCHCGD-DABBBB--A---A--------------
| A AAAA AABCF ADBACEECDDDHACCCC AEAA A A
| A BA B ABA CAAAAABCA BB CAAA A
| A DA AA BBA AA
| A A
|
-20 +
---+-------------+-------------+-------------+-------------+--
40 50 60 70 80
予測値 taijyuu
2018年10月15日 月曜日 20時38分37秒 80
: resid1*shintyou. A=1, B=2, ...
40 +
|
|
|
|
| A A
残 20 + A
差 | B A
| A A A AAAA
| A A A A B AAB DA A A
| A A B ABA BC ABA ACB A AA A
| AA A A A CA AAAB AFE BAA EBBA F
0 +----------AB---A-AAB-BDAC-AAB-DA--DBECBAHCAFDCAABBB-B---A---A--------
| A AAA A B B DE ADB ACEE CDDADGD CBD AEA A A A
| A BA B ABA CAAAA AB CA BB C AAA A
| A DA A A B BA AA
| A A
|
-20 +
--+------------+------------+------------+------------+------------+--
140 150 160 170 180 190
shintyou
2018年10月15日 月曜日 20時38分37秒 81
: resid1*taijyuu. A=1, B=2, ...
40 +
|
|
|
|
| A A
残 20 + A
差 | A A A
| A A AAC
| A A A B A AACBB A A
| A B AB AB FB DABA B
| AA AA AA C A B GDCAEACD F
0 +-------------AAAA-AC-DCC-DDA-FBDFBIEFEA-BCA--A-A---------------------
| A BAA BBABCCEDDE GHCCANBACC B B
| ABA CABC A DCA C BBACA A
| A AD B BB A AA
| A A
|
-20 +
--+----------+----------+----------+----------+----------+----------+-
30 40 50 60 70 80 90
taijyuu
10. 次回は、... : 10月23日 16:20-17:50