/* Lesson 11-1 */ /* File Name = les1101.sas 06/28/07 */ data gakusei; infile 'all07ae.prn' firstobs=2; input sex $ shintyou taijyuu kyoui jitaku $ kodukai carryer $ tsuuwa; if sex^='M' & sex^='F' then delete; if kodukai>=250000 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 10:30 Thursday, June 28, 2007 プロット : SHINTYOU*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) SHINTYOU | 200 + | | A B A A 180 + A BECFDEBGA B B A A A | CAHELIVQLHDHEDB BC | AFAGJJGFBCDEAA AA A A 160 + ADEHDIFDBACB | A ECBEDDA A A | A BAA 140 + ---+-----------+-----------+-----------+-----------+-- 20 40 60 80 100 TAIJYUU SAS システム 3 10:30 Thursday, June 28, 2007 プロット : TAIJYUU*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) 100 + B | A A TAIJYUU | A A A A B B A A | A B CBDDE ECGBD DCH B BB | A AA AE B CBECG KDSJMBMGFFE CADCB A 50 + AAB CACEC EEIBH EBEFG DAACC BC | A A B D BA BA | | | 0 + --+-----------+-----------+-----------+-----------+-----------+- 140 150 160 170 180 190 SHINTYOU SAS システム 4 10:30 Thursday, June 28, 2007 Correlation Analysis 5 'VAR' Variables: SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA Simple Statistics Variable N Mean Std Dev Sum Minimum Maximum SHINTYOU 356 167.9 8.1702 59765.1 145.0 186.0 TAIJYUU 322 58.7323 9.2645 18911.8 35.0000 100.0 KYOUI 111 86.5856 7.5383 9611.0 56.0000 112.0 KODUKAI 343 46215.7 43364.9 15852000 0 200000 TSUUWA 146 6597.3 4434.6 963202 0 30000.0 SAS システム 5 10:30 Thursday, June 28, 2007 Correlation Analysis Pearson Correlation Coefficients / Prob > |R| under Ho: Rho=0 / Number of Observations SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA SHINTYOU 1.00000 0.71021 0.40297 0.03347 -0.01782 0.0 0.0001 0.0001 0.5415 0.8327 356 322 111 335 143 TAIJYUU 0.71021 1.00000 0.66551 0.00333 -0.04543 0.0001 0.0 0.0001 0.9539 0.6050 322 322 111 304 132 KYOUI 0.40297 0.66551 1.00000 -0.07041 -0.17722 0.0001 0.0001 0.0 0.4711 0.2940 111 111 111 107 37 KODUKAI 0.03347 0.00333 -0.07041 1.00000 0.23074 0.5415 0.9539 0.4711 0.0 0.0057 335 304 107 343 142 TSUUWA -0.01782 -0.04543 -0.17722 0.23074 1.00000 0.8327 0.6050 0.2940 0.0057 0.0 143 132 37 142 146
[注意] 相関行列は細切れに表示されるので、 不要部分を削除することによって整形しレポート等に使うこと。
[補足] 上のプログラムでは小遣い額が25万円以上の者を
除外したが、除外せずに実行するとどのような結果が得られるであろうか?
「胸囲と小遣い額」の相関係数の部分に注目せよ。少数例(ここでは3例)の影響で
相関係数が大きく変化していることに注意せよ。
SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA
KODUKAI 0.05626 0.03758 -0.27321 1.00000 0.23074
0.3024 0.5119 0.0039 0.0 0.0057
338 307 110 346 142
/* Lesson 11-2 */ /* File Name = les1102.sas 06/28/07 */ data gakusei; infile 'all07ae.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 08:52 Thursday, June 28, 2007 Model: MODEL1 Dependent Variable: TAIJYUU Analysis of Variance Sum of Mean Source DF Squares Square F Value Prob>F Model 1 14055.20146 14055.20146 318.560 0.0001 Error 323 14251.10026 44.12105 C Total 324 28306.30172 Root MSE 6.64237 R-square 0.4965 Dep Mean 58.78092 Adj R-sq 0.4950 C.V. 11.30021 SAS システム 3 08:52 Thursday, June 28, 2007 Parameter Estimates Parameter Standard T for H0: Variable DF Estimate Error Parameter=0 Prob > |T| INTERCEP 1 -79.351524 7.74803757 -10.241 0.0001 SHINTYOU 1 0.818831 0.04587737 17.848 0.0001 SAS システム 4 08:52 Thursday, June 28, 2007 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.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 SAS システム 6 08:52 Thursday, June 28, 2007 プロット : TAIJYUU*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) TAIJYUU | 100 + B | A A 80 + A A A B B B A A | A B CBDDE ECGBD DCH B BB 60 + A AA AE B CBECG KDSJMBMGFFE CBDCB A | AAB CACEC EEIBH EBEGG DAACC BC 40 + A A B D BA BA | 20 + | --+-----------+-----------+-----------+-----------+-----------+- 140 150 160 170 180 190 SHINTYOU SAS システム 7 08:52 Thursday, June 28, 2007 プロット : PRED1*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) 80 + | PRED1 | A A B A A | A BDACFBB H B A A A A | ABBCCCNHEECIBB A BC A 60 + CFCLHHIMEIBBADBBA A A | AH EHDIACCAAE A | BCEEEHACAABA | BABCDACA A A | A CACB B A 40 + A BA ---+------------+------------+------------+------------+-- 20 40 60 80 100 TAIJYUU SAS システム 8 08:52 Thursday, June 28, 2007 プロット : RESID1*PRED1. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) | R 50 + e | s | A A i 25 + A A A d | A B B A BA A u | A A A AB BBBB BCBCDEDBB ABA A A a 0 +-------------A-ABAAACCCCECDDJBEEBFDIJDQIJJHIDECBJ-A-AB----------- l | AA BAA CABA CGDDACFFDBDFBCBBBBAA | A A -25 + ---+-----------+-----------+-----------+-----------+-----------+-- 30 40 50 60 70 80 Predicted Value of TAIJYUU SAS システム 9 08:52 Thursday, June 28, 2007 プロット : RESID1*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) | R 50 + e | s | A A i 25 + A A A d | A B B A B A A u | A A A AB B BBB B CBCDE DBB A BA A A a 0 +--------A-A-BAAAC-DBCEC-DDJBE-EBFDI-JDQGKAJHIDE-CBJ-A--AB-------- l | A A BA AAB C A CFE DACFEADBDDD CBBBB AA | A A -25 + ---+-----------+-----------+-----------+-----------+-----------+-- 140 150 160 170 180 190 SHINTYOU SAS システム 10 08:52 Thursday, June 28, 2007 プロット : RESID1*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... (NOTE: 45 オブザベーションが欠損値です.) | R 50 + e | s | A A i 25 + A A A d | A BABC A u | A ABACBBJBECGBC B A a 0 +--------------A-DBEFFFMLERGKUTINEJ-GA-------------------- l | A CABCK DMEIEEHCCB | A A -25 + ---+------------+------------+------------+------------+-- 20 40 60 80 100 TAIJYUU SAS システム 11 08:52 Thursday, June 28, 2007 Univariate Procedure Variable=RESID1 Residual Moments N 325 Sum Wgts 325 Mean 0 Sum 0 Std Dev 6.63211 Variance 43.98488 Skewness 1.42133 Kurtosis 4.000837 USS 14251.1 CSS 14251.1 CV . Std Mean 0.367883 T:Mean=0 0 Pr>|T| 1.0000 Num ^= 0 325 Num > 0 140 M(Sign) -22.5 Pr>=|M| 0.0145 Sgn Rank -3248.5 Pr>=|S| 0.0552 W:Normal 0.916608 Pr<W 0.0001 SAS システム 15 08:52 Thursday, June 28, 2007 Univariate Procedure Variable=RESID1 Residual Histogram # Boxplot 35+* 1 * .** 5 0 .**** 15 0 .****************************** 119 +--+--+ .********************************************* 178 *-----* -15+** 7 | ----+----+----+----+----+----+----+----+----+ * may represent up to 4 counts SAS システム 16 08:52 Thursday, June 28, 2007 Univariate Procedure Variable=RESID1 Residual Normal Probability Plot 35+ * | ***** | ******+++++ | ++************** | *********************** -15+***+**++++ +----+----+----+----+----+----+----+----+----+----+ -2 -1 0 +1 +2
[注意] 誤差は「説明変量」の軸と垂直に取ることに注意せよ。 誤差は測定時に混入していると考えてモデルが構築されているから。
[注意] 「正規性を乱している者は何でも除外してかまわない」というわけではない。 今回の場合は、元データに戻ったところ、体育会系のずんぐりした者であったため、 普通の大学生とは異なる性質を有していると判断し除外対象とした。 除外する場合にはその根拠を明確にしないと、「恣意的な解析」と言われかねないことに注意せよ。
/* Lesson 11-3 */ /* File Name = les1103.sas 06/28/07 */ data gakusei; infile 'all07ae.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 08:52 Thursday, June 28, 2007 Correlation Analysis 5 'VAR' Variables: SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA Simple Statistics Variable N Mean Std Dev Sum Minimum Maximum SHINTYOU 321 168.6 8.0251 54118.5 145.0 186.0 TAIJYUU 321 58.3498 8.5473 18730.3 35.0000 84.0000 KYOUI 111 85.7477 7.9561 9518.0 46.0000 110.0 KODUKAI 303 49107.3 51750.8 14879500 0 350000 TSUUWA 132 6742.4 4469.7 890002 0 30000.0 SAS システム 3 08:52 Thursday, June 28, 2007 Correlation Analysis Pearson Correlation Coefficients / Prob > |R| under Ho: Rho=0 / Number of Observations SHINTYOU TAIJYUU KYOUI KODUKAI TSUUWA SHINTYOU 1.00000 0.72880 0.28729 0.06533 -0.05960 0.0 0.0001 0.0022 0.2569 0.4972 321 321 111 303 132 TAIJYUU 0.72880 1.00000 0.38406 0.06408 -0.04543 0.0001 0.0 0.0001 0.2662 0.6050 321 321 111 303 132 KYOUI 0.28729 0.38406 1.00000 -0.28125 -0.17722 0.0022 0.0001 0.0 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.0 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 0.0 132 132 37 128 132 SAS システム 6 08:52 Thursday, June 28, 2007 Model: MODEL1 Dependent Variable: TAIJYUU Analysis of Variance Sum of Mean Source DF Squares Square F Value Prob>F Model 1 12417.15747 12417.15747 361.385 0.0001 Error 319 10960.80502 34.35989 C Total 320 23377.96249 Root MSE 5.86173 R-square 0.5311 Dep Mean 58.34984 Adj R-sq 0.5297 C.V. 10.04584 SAS システム 7 08:52 Thursday, June 28, 2007 Parameter Estimates Parameter Standard T for H0: Variable DF Estimate Error Parameter=0 Prob > |T| INTERCEP 1 -72.515375 6.89174111 -10.522 0.0001 SHINTYOU 1 0.776218 0.04083178 19.010 0.0001 SAS システム 10 08:52 Thursday, June 28, 2007 プロット : TAIJYUU*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... TAIJYUU | 100 + | | A A 75 + A B BAB B C B BA A A | BB B CBICDAEDGDD CCKAB BA | A AA AE B C DCG JDMJLALFEDE CAABA A 50 + AA CACEB DEGBG EBEGG DAACC BC | A A BA AC BA BB A B A | A 25 + --+-----------+-----------+-----------+-----------+-----------+- 140 150 160 170 180 190 SHINTYOU SAS システム 11 08:52 Thursday, June 28, 2007 プロット : TAIJYUU*PRED1. 凡例: A = 1 OBS, B = 2 OBS, ... TAIJYUU | 100 + | | A A 75 + A B BABAACAABA A A | BB EBHDDFDGDDCCKABBA | A AA AE BC DDNFLKLLGEFCCABAB 50 + AABBCEBDDHCFEBEHIBACC BC | A ABA BD ABBA B A | A 25 + ---+-----------+-----------+-----------+-----------+-- 40 50 60 70 80 Predicted Value of TAIJYUU SAS システム 12 08:52 Thursday, June 28, 2007 プロット : RESID1*PRED1. 凡例: A = 1 OBS, B = 2 OBS, ... | R 40 + e | s | i 20 + A A A A d | A AAAAB AC BA A u | A B B AB BBBBABEBHDCDBD B A a 0 +--A-ABAAABABDEACDGCEE-FCIFEJGKKGGDECBJ-A-AB-------------- l | AB BBB E CABCFECBDEDDCBDDCBACBAA | A AA C A -20 + ---+------------+------------+------------+------------+-- 40 50 60 70 80 Predicted Value of TAIJYUU SAS システム 13 08:52 Thursday, June 28, 2007 プロット : RESID1*SHINTYOU. 凡例: A = 1 OBS, B = 2 OBS, ... | R 40 + e | s | i 20 + A A A A d | A AAAAB A C B A A u | A B B AB B BBBAB EBICC DBD AA A a 0 +--------A-A-BAAAB-BBCEA-CDHBE-E-FCI-HCJGKAJHFDE-CBJ-A--AB-------- l | A B BB BAD C ABCFE DADEDADBBDD CBBBB AA | A AA C A -20 + ---+-----------+-----------+-----------+-----------+-----------+-- 140 150 160 170 180 190 SHINTYOU SAS システム 14 08:52 Thursday, June 28, 2007 プロット : RESID1*TAIJYUU. 凡例: A = 1 OBS, B = 2 OBS, ... | R 40 + e | s | i 20 + A B A d | A A AB C BCA A u | B A A B AD EFDHBAGAEB AA a 0 +----------A--AABBBDADFFDFEEMEEICTFLDEGECD-G-A-------------------- l | ADA CDDI ABFFEEFDDAHC CAA | A C B A -20 + ---+---------+---------+---------+---------+---------+---------+-- 30 40 50 60 70 80 90 TAIJYUU SAS システム 15 08:52 Thursday, June 28, 2007 Univariate Procedure Variable=RESID1 Residual Moments N 321 Sum Wgts 321 Mean 0 Sum 0 Std Dev 5.852565 Variance 34.25252 Skewness 0.822649 Kurtosis 1.167031 USS 10960.81 CSS 10960.81 CV . Std Mean 0.326658 T:Mean=0 0 Pr>|T| 1.0000 Num ^= 0 321 Num > 0 142 M(Sign) -18.5 Pr>=|M| 0.0443 Sgn Rank -2359.5 Pr>=|S| 0.1565 W:Normal 0.954643 Pr<W 0.0001 SAS システム 18 08:52 Thursday, June 28, 2007 Univariate Procedure Variable=RESID1 Residual Histogram # Boxplot 22.5+* 2 0 .** 4 0 .***** 13 0 .************* 38 | .***************************** 85 +--+--+ .******************************************* 127 *-----* .*************** 45 | -12.5+*** 7 | ----+----+----+----+----+----+----+----+--- * may represent up to 3 counts SAS システム 19 08:52 Thursday, June 28, 2007 Univariate Procedure Variable=RESID1 Residual Normal Probability Plot 22.5+ * | **** | *****+++++ | *******++ | +********* | ************ | ***********+ -12.5+****+*++ +----+----+----+----+----+----+----+----+----+----+ -2 -1 0 +1 +2
options linesize=72 pagesize=20;
sas les9999.sas