/* Lesson 10-1 */ /* File Name = les1001.sas 12/09/04 */ data gakusei; infile 'all04b.prn' 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 plot data=gakusei; : 散布図を描く plot shintyou*taijyuu; : 散布図の変量を指定(縦軸、横軸の順) plot taijyuu*shintyou; : run: : proc corr data=gakusei; : 相関係数(相関行列)を計算 run: :
SAS システム 2 19:47 Tuesday, December 7, 2004 プロット : SHINTYOU*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) SHINTYOU | 200 + | | B A 180 + A BDCEDDBEA B B A A A | BAFDKHTNHGCFECB BA | AEAGIFFEBBCEAA AA A A 160 + ADCEDHDDBABB | A EC ECDA A A | A BAA 140 + ---+-----------+-----------+-----------+-----------+-- 20 40 60 80 100 TAIJYUU SAS システム 3 19:47 Tuesday, December 7, 2004 プロット : TAIJYUU*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) 100 + B | A A TAIJYUU | A A A A B A A | A B CBDDC DCGAD CCF B AA | A AA E B CBCBG HBPHLBIFFDC CBDBB A 50 + AAA CABEA DCI F EBCGF DAABB BB | A A B D BA BA | | | 0 + --+-----------+-----------+-----------+-----------+-----------+- 140 150 160 170 180 190 SHINTYOU SAS システム 4 19:47 Tuesday, December 7, 2004 Correlation Analysis 5 'VAR' Variables: SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA Simple Statistics Variable N Mean Std Dev Sum Minimum Maximum SHINTYOU 302 167.8 8.2205 50662.8 145.0 186.0 TAIJYUU 271 58.7037 9.4449 15908.7 35.0000 100.0 KYOUI 102 86.5196 7.6827 8825.0 56.0000 112.0 KODUKAI 290 49194.8 49521.6 14266500 0 300000 TSUUWA 94 7252.6 4751.5 681748 200.0 30000.0 SAS システム 5 19:47 Tuesday, December 7, 2004 Correlation Analysis Pearson Correlation Coefficients / Prob > |R| under Ho: Rho=0 / Number of Observations SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA SHINTYOU 1.00000 0.70669 0.37083 0.05623 0.11395 0.0 0.0001 0.0001 0.3468 0.2821 302 271 102 282 91 TAIJYUU 0.70669 1.00000 0.65679 -0.00795 0.06466 0.0001 0.0 0.0001 0.8996 0.5614 271 271 102 254 83 KYOUI 0.37083 0.65679 1.00000 -0.08148 0.06058 0.0001 0.0001 0.0 0.4251 0.7688 102 102 102 98 26 KODUKAI 0.05623 -0.00795 -0.08148 1.00000 0.13064 0.3468 0.8996 0.4251 0.0 0.2171 282 254 98 290 91 TSUUWA 0.11395 0.06466 0.06058 0.13064 1.00000 0.2821 0.5614 0.7688 0.2171 0.0 91 83 26 91 94
[注意] 相関行列は細切れに表示されるので、 不要部分を削除することによって整形しレポート等に使うこと。
/* Lesson 10-2 */ /* File Name = les1002.sas 12/09/04 */ data gakusei; infile 'all04b.prn' 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; :[補足] proc plot の下に以下の行を追加した方がより正確ではある。 欠損値を含むデータを解析対象から除外する事を指示する命令文である。 「欠損値です」の表示が無くなるだけで、得られる図は同じ(欠損値は描画できないから)。 試しに追加する/しないの両方で実行してみよ。
where shintyou^=. and taijyuu^=.;
SAS システム 2 19:47 Tuesday, December 7, 2004 Model: MODEL1 Dependent Variable: TAIJYUU Analysis of Variance Sum of Mean Source DF Squares Square F Value Prob>F Model 1 12028.55223 12028.55223 268.365 0.0001 Error 269 12057.02408 44.82165 C Total 270 24085.57631 Root MSE 6.69490 R-square 0.4994 Dep Mean 58.70369 Adj R-sq 0.4975 C.V. 11.40456 SAS システム 3 19:47 Tuesday, December 7, 2004 Parameter Estimates Parameter Standard T for H0: Variable DF Estimate Error Parameter=0 Prob > |T| INTERCEP 1 -79.399347 8.44005421 -9.407 0.0001 SHINTYOU 1 0.819351 0.05001583 16.382 0.0001 SAS システム 4 19:47 Tuesday, December 7, 2004 S H T K C I A J O A T R N I K I D R S P E T J Y T U R U R S O S Y Y O A K Y U E I B E O U U K A E W D D S X U U I U I R A 1 1 1 F 145.0 38.0 . J 10000 . 39.4066 -1.4066 2 F 146.7 41.0 85 J 10000 Vodafone 6000 40.7995 0.2005 3 F 148.0 42.0 . J 50000 . 41.8647 0.1353 4 F 148.0 43.0 80 J 50000 DoCoMo 4000 41.8647 1.1353 5 F 148.9 . . J 60000 . 42.6021 . 6 F 149.0 45.0 . G 60000 . 42.6840 2.3160 7 F 150.0 46.0 86 40000 . 43.5034 2.4966 8 F 151.0 50.0 . G 60000 J-PHONE . 44.3227 5.6773 9 F 151.7 41.5 80 J 35000 . 44.8963 -3.3963 10 F 152.0 35.0 77 J 60000 DoCoMo 2000 45.1421 -10.1421 11 F 152.0 43.0 . J 20000 au 3500 45.1421 -2.1421 12 F 152.0 44.0 . 45000 DoCoMo 4000 45.1421 -1.1421 13 F 153.0 41.0 . J 125000 No . 45.9614 -4.9614 14 F 153.0 42.0 . G 0 Vodafone 1000 45.9614 -3.9614 15 F 153.0 46.5 87 G 10000 . 45.9614 0.5386 SAS システム 6 19:47 Tuesday, December 7, 2004 プロット : TAIJYUU*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) TAIJYUU | 100 + B | A A 80 + A A A A B A A | A B CBDDC DCGAD CCF B AA 60 + A AA E B CBCBG HBPHLBIFFDC CBDBB A | AAA CABEA DCI F EBCGF DAABB BB 40 + A A B D BA BA | 20 + | --+-----------+-----------+-----------+-----------+-----------+- 140 150 160 170 180 190 SHINTYOU SAS システム 7 19:47 Tuesday, December 7, 2004 プロット : PRED1*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) 80 + | PRED1 | A B A | A BDABFAB F B A A A A | AABBBBLFDDBHBB A BB 60 + BECJHGGKBHBAADABA A | AF EHCG CCAAE A | BBDCEEACAAAA | BAACBACA A A | A CABB B A 40 + A BA ---+------------+------------+------------+------------+-- 20 40 60 80 100 TAIJYUU SAS システム 8 19:47 Tuesday, December 7, 2004 プロット : RESID1*PRED1. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) | R 50 + e | s | A A i 25 + A A d | A B A A AA A u | A A A B BBBB BBBCDCCBB ABA A A a 0 +-------------A-ABAA-CCBCEACBJ-DEBDCHHBNGIHGIBEBBH-A-A------------ l | AA BAA C BA AGDDACEEACCE CBBABA A | A A -25 + ---+-----------+-----------+-----------+-----------+-----------+-- 30 40 50 60 70 80 Predicted Value of TAIJYUU SAS システム 9 19:47 Tuesday, December 7, 2004 プロット : RESID1*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) | R 50 + e | s | A A i 25 + A A d | A B A A A A A u | A A A B B BBB B BBCDC CBB A BA A A a 0 +--------A-A-BAA-C-DBBEA-CBJ-D-EBDCH-HBNEJAHGIBE-BBH-A--A--------- l | A A BA AAB B A AFE DACEDABBCCB CBBAB A A | A A -25 + ---+-----------+-----------+-----------+-----------+-----------+-- 140 150 160 170 180 190 SHINTYOU SAS システム 10 19:47 Tuesday, December 7, 2004 プロット : RESID1*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 42 オブザベーションが欠損値です.) | R 50 + e | s | A A i 25 + A A d | A BABA A u | A ABABBAJBCCGAC B A a 0 +--------------A-DBCEDDMIDNFJSPFLCI-E--------------------- l | A CABCH CKEHDDFCBA A | A A -25 + ---+------------+------------+------------+------------+-- 20 40 60 80 100 TAIJYUU SAS システム 11 19:47 Tuesday, December 7, 2004 Univariate Procedure Variable=RESID1 Residual Moments N 271 Sum Wgts 271 Mean 0 Sum 0 Std Dev 6.682488 Variance 44.65564 Skewness 1.452497 Kurtosis 4.266356 USS 12057.02 CSS 12057.02 CV . Std Mean 0.405932 T:Mean=0 0 Pr>|T| 1.0000 Num ^= 0 271 Num > 0 118 M(Sign) -17.5 Pr>=|M| 0.0387 Sgn Rank -2173 Pr>=|S| 0.0925 W:Normal 0.915603 PrSAS システム 15 19:47 Tuesday, December 7, 2004 Univariate Procedure Variable=RESID1 Residual Histogram # Boxplot 35+* 1 * .* 4 0 .*** 12 0 .************************** 101 +--+--+ .************************************* 148 *-----* -15+** 5 | ----+----+----+----+----+----+----+-- * may represent up to 4 counts SAS システム 16 19:47 Tuesday, December 7, 2004 Univariate Procedure Variable=RESID1 Residual Normal Probability Plot 35+ * | *** * | ******+++++ | ++************** | *********************** -15+*+***++++++ +----+----+----+----+----+----+----+----+----+----+ -2 -1 0 +1 +2
[注意] 誤差は「説明変量」の軸と垂直に取ることに注意せよ。 誤差は測定時に混入していると考えてモデルが構築されているから。
[注意] 「正規性を乱している者は何でも除外してかまわない」というわけではない。 今回の場合は、元データに戻ったところ、体育会系のずんぐりした者であったため、 普通の大学生とは異なる性質を有していると判断し除外対象とした。 除外する場合にはその根拠を明確にしないと、「恣意的な解析」と言われかねないことに注意せよ。
/* Lesson 10-3 */ /* File Name = les1003.sas 12/09/04 */ data gakusei; infile 'all04b.prn' 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; plot taijyuu*pred1; plot resid1*(pred1 shintyou taijyuu)/vref=0; : まとめて指定することも可 run; proc univariate data=outreg1 plot normal; var resid1; run;
SAS システム 2 11:18 Thursday, December 9, 2004 Correlation Analysis 5 'VAR' Variables: SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA Simple Statistics Variable N Mean Std Dev Sum Minimum Maximum SHINTYOU 267 168.4 8.1234 44970.2 145.0 186.0 TAIJYUU 267 58.1843 8.4790 15535.2 35.0000 82.0000 KYOUI 99 86.0505 7.1804 8519.0 56.0000 110.0 KODUKAI 250 50008.0 51452.2 12502000 0 300000 TSUUWA 83 7548.8 4737.5 626548 500.0 30000.0 SAS システム 3 11:18 Thursday, December 9, 2004 Correlation Analysis Pearson Correlation Coefficients / Prob > |R| under Ho: Rho=0 / Number of Observations SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA SHINTYOU 1.00000 0.73613 0.33185 0.06539 0.06716 0.0 0.0001 0.0008 0.3031 0.5463 267 267 99 250 83 TAIJYUU 0.73613 1.00000 0.58754 0.01982 0.06466 0.0001 0.0 0.0001 0.7552 0.5614 267 267 99 250 83 KYOUI 0.33185 0.58754 1.00000 -0.07398 0.06058 0.0008 0.0001 0.0 0.4762 0.7688 99 99 99 95 26 KODUKAI 0.06539 0.01982 -0.07398 1.00000 0.18525 0.3031 0.7552 0.4762 0.0 0.0999 250 250 95 250 80 TSUUWA 0.06716 0.06466 0.06058 0.18525 1.00000 0.5463 0.5614 0.7688 0.0999 0.0 83 83 26 80 83 SAS システム 6 11:18 Thursday, December 9, 2004 Model: MODEL1 Dependent Variable: TAIJYUU Analysis of Variance Sum of Mean Source DF Squares Square F Value Prob>F Model 1 10362.83588 10362.83588 313.465 0.0001 Error 265 8760.61806 33.05894 C Total 266 19123.45393 Root MSE 5.74969 R-square 0.5419 Dep Mean 58.18427 Adj R-sq 0.5402 C.V. 9.88186 SAS システム 7 11:18 Thursday, December 9, 2004 Parameter Estimates Parameter Standard T for H0: Variable DF Estimate Error Parameter=0 Prob > |T| INTERCEP 1 -71.227578 7.31782164 -9.733 0.0001 SHINTYOU 1 0.768352 0.04339759 17.705 0.0001 SAS システム 10 11:18 Thursday, December 9, 2004 プロット : TAIJYUU*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... TAIJYUU | 100 + | | A 75 + A B AAA B B B BA A | BB B BBFCCADCGBD BCI B AA | A AA E B C BBG HBMHKAHFECC CAABA A 50 + AA CABEA CCG E EBCGF DAABB BB | A A BA C BA BA A B A | A 25 + --+-----------+-----------+-----------+-----------+-----------+- 140 150 160 170 180 190 SHINTYOU SAS システム 11 11:18 Thursday, December 9, 2004 プロット : TAIJYUU*PRED1. 凡例: A = 1 OBS, B = 2 OBS, ... TAIJYUU | 100 + | | A 75 + A B AAAB BAABA A | BB DBFCCECGBDBL B AA | A AA E BC BCLDMHLGGEEACACAA 50 + AA CCEACBH EEBCHHBABB BB | A ABA ABBABAA B A | A 25 + ---+-----------+-----------+-----------+-----------+-- 40 50 60 70 80 Predicted Value of TAIJYUU SAS システム 12 11:18 Thursday, December 9, 2004 プロット : RESID1*PRED1. 凡例: A = 1 OBS, B = 2 OBS, ... | R 40 + e | s | i 20 + A A d | A AAAAA AB BA A u | A B B B BBBBABDAFCBCBD B A a 0 +--A-ABAA-BABBE-CBGADE-DBHDDJEJIFGBEBCH-A-AA-------------- l | AB ABAA E BABAFECBDDDBCBCBCABABA | A A B A -20 + ---+------------+------------+------------+------------+-- 40 50 60 70 80 Predicted Value of TAIJYUU SAS システム 13 11:18 Thursday, December 9, 2004 プロット : RESID1*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... | R 40 + e | s | i 20 + A A d | A AAAAA A B B A A u | A B B B B BBBAB DAFCB CBD AA A a 0 +--------A-A-BAA-B-BABE--CBH-D-E-DBH-FBJEJAHGFBE-BCH-A--AA-------- l | A BA BA AAD B ABAFE DADDDABBBCB CABAB A | A A B A -20 + ---+-----------+-----------+-----------+-----------+-----------+-- 140 150 160 170 180 190 SHINTYOU SAS システム 14 11:18 Thursday, December 9, 2004 プロット : RESID1*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... | R 40 + e | s | i 20 + A A d | A A AA C BC A u | B A A B AC DCCHBAEAEB AA a 0 +----------A--AABAADABDFDECDIEDIBREJDDGCCD-E---------------------- l | ADAABCCG ABFEEDFCCAFC AA | A B A A -20 + ---+---------+---------+---------+---------+---------+---------+-- 30 40 50 60 70 80 90 TAIJYUU SAS システム 15 11:18 Thursday, December 9, 2004 Univariate Procedure Variable=RESID1 Residual Moments N 267 Sum Wgts 267 Mean 0 Sum 0 Std Dev 5.738872 Variance 32.93465 Skewness 0.695841 Kurtosis 0.7069 USS 8760.618 CSS 8760.618 CV . Std Mean 0.351213 T:Mean=0 0 Pr>|T| 1.0000 Num ^= 0 267 Num > 0 116 M(Sign) -17.5 Pr>=|M| 0.0373 Sgn Rank -1442 Pr>=|S| 0.2543 W:Normal 0.964702 PrSAS システム 18 11:18 Thursday, December 9, 2004 Univariate Procedure Variable=RESID1 Residual Histogram # Boxplot 22.5+* 1 0 .* 2 0 .**** 12 0 .************ 34 | .*********************** 67 +--+--+ .************************************ 108 *-----* .************* 38 | -12.5+** 5 | ----+----+----+----+----+----+----+- * may represent up to 3 counts SAS システム 19 11:18 Thursday, December 9, 2004 Univariate Procedure Variable=RESID1 Residual Normal Probability Plot 22.5+ * | * * | *******+++ | ********+ | ++******** | ************* | ***********+ -12.5+*+***+++ +----+----+----+----+----+----+----+----+----+----+ -2 -1 0 +1 +2