/* Lesson 4-1 */ :
/* File Name = les0401.sas 05/01/08 */ :
:
data naikaku; : データ名の定義
infile 'naikaku0710.prn' : ファイル名の指定
firstobs=2; : 数値は 2行目から入っている
input name $ posit $ sex $ tochi : 読み込む変量名
; : 終りを示すセミコロン
proc print data=naikaku; : データの表示
run; :
proc means data=naikaku; : 平均、標準偏差、最大最小値の算出
run; :
SAS システム 1
15:09 Wednesday, April 23, 2008
OBS NAME POSIT SEX TOCHI
1 Fukuda Kakuryou M 6731
2 Masuda Kakuryou M 1416
3 Hatoyama Kakuryou M 52728
4 Komoto Kakuryou M 6163
5 Nukaga Kakuryou M 4695
6 Tokai Kakuryou M 2138
7 Masuzoe Kakuryou M 0
8 Wakabaya Kakuryou M 3254
9 Amari Kakuryou M 3358
10 Fuyushib Kakuryou M 1435
<中略>
67 Namiki Seimu M 13848
68 Terada Seimu M 20935
69 Akimoto Seimu M 0
SAS システム 6
15:09 Wednesday, April 23, 2008
Analysis Variable : TOCHI
N Mean Std Dev Minimum Maximum
----------------------------------------------------------
69 6451.67 11945.19 0 60729.00
----------------------------------------------------------
/* Lesson 4-2 */
/* File Name = les0402.sas 05/01/08 */
data naikaku;
infile 'naikaku0710.prn'
firstobs=2;
input name $13. posit $ sex $ tochi : 文字列長の指定方法
yotyokin total honnin kasituke kariire : 長い場合は 2行に
;
proc print data=naikaku;
run;
proc means data=naikaku;
run;
proc chart data=naikaku; : ヒストグラムを描く
hbar total; : 水平棒グラフで。変量を指定
vbar total; : 垂直棒グラフで。変量を指定
run;
SAS システム 1
15:11 Wednesday, April 23, 2008
Y K
O A K
T H S A
P T Y T O I R
N O O O O N T I
O A S S C K T N U I
B M I E H I A I K R
S E T X I N L N E E
1 Fukuda Kakuryou M 6731 480 7211 7031 0 3800
2 Masuda Kakuryou M 1416 5380 6796 6047 0 0
3 Hatoyama Kakuryou M 52728 20308 73036 72481 0 40000
4 Komoto Kakuryou M 6163 1861 8024 6713 0 0
5 Nukaga Kakuryou M 4695 200 4895 3682 0 7500
6 Tokai Kakuryou M 2138 0 2138 1823 0 0
7 Masuzoe Kakuryou M 0 36149 36149 33999 1646 0
8 Wakabayashi Kakuryou M 3254 6445 9699 4854 2100 0
9 Amari Kakuryou M 3358 4450 7808 5205 0 880
10 Fuyushiba Kakuryou M 1435 1000 2435 1435 0 0
<中略>
SAS システム 7
15:11 Wednesday, April 23, 2008
Variable N Mean Std Dev Minimum Maximum
--------------------------------------------------------------------
TOCHI 69 6451.67 11945.19 0 60729.00
YOTYOKIN 69 3277.99 6557.29 0 36149.00
TOTAL 69 9729.64 16334.46 0 84817.00
HONNIN 69 6642.59 11686.66 0 72481.00
KASITUKE 69 460.7246377 970.1453330 0 4000.00
KARIIRE 69 2383.14 5853.12 0 40000.00
--------------------------------------------------------------------
SAS システム 8
15:11 Wednesday, April 23, 2008
TOTAL Cum. Cum.
Midpoint Freq Freq Percent Percent
|
0 |********************** 44 44 63.77 63.77
12000 |******** 16 60 23.19 86.96
24000 |** 3 63 4.35 91.30
36000 |** 3 66 4.35 95.65
48000 | 0 66 0.00 95.65
60000 | 0 66 0.00 95.65
72000 |* 2 68 2.90 98.55
84000 |* 1 69 1.45 100.00
|
-----+----+----+----+--
10 20 30 40
Frequency
SAS システム 9
15:11 Wednesday, April 23, 2008
Frequency
| *****
40 + *****
| *****
30 + *****
| *****
20 + *****
| ***** *****
10 + ***** *****
| ***** ***** ***** *****
--------------------------------------------------------------------
0 12000 24000 36000 48000 60000 72000 84000
TOTAL Midpoint
/* Lesson 4-3 */
/* File Name = les0403.sas 05/01/08 */
data naikaku;
infile 'naikaku0710.prn'
firstobs=2;
input name $13. posit $ sex $ tochi
yotyokin total honnin kasituke kariire
;
proc print data=naikaku(obs=5); : 先頭の 5ケースだけを表示。確認用
run;
proc means data=naikaku;
var tochi total; : 平均等を求めたい変量を指定
run;
proc chart data=naikaku;
hbar total;
vbar total;
run;
proc chart data=naikaku;
hbar total / midpoints= 5000 to 50000 by 5000; : 軸の値を指定
vbar total / midpoints=10000 to 50000 by 10000; : 軸の値を指定
run;
SAS システム 1
15:12 Wednesday, April 23, 2008
OBS NAME POSIT SEX TOCHI YOTYOKIN TOTAL HONNIN KASITUKE KARIIRE
1 Fukuda Kakuryou M 6731 480 7211 7031 0 3800
2 Masuda Kakuryou M 1416 5380 6796 6047 0 0
3 Hatoyama Kakuryou M 52728 20308 73036 72481 0 40000
4 Komoto Kakuryou M 6163 1861 8024 6713 0 0
5 Nukaga Kakuryou M 4695 200 4895 3682 0 7500
SAS システム 2
15:12 Wednesday, April 23, 2008
Variable N Mean Std Dev Minimum Maximum
--------------------------------------------------------------------
TOCHI 69 6451.67 11945.19 0 60729.00
TOTAL 69 9729.64 16334.46 0 84817.00
--------------------------------------------------------------------
<中略>
SAS システム 5
15:12 Wednesday, April 23, 2008
TOTAL Cum. Cum.
Midpoint Freq Freq Percent Percent
|
5000 |************************* 49 49 71.01 71.01
10000 |***** 10 59 14.49 85.51
15000 |* 1 60 1.45 86.96
20000 |* 2 62 2.90 89.86
25000 |* 1 63 1.45 91.30
30000 | 0 63 0.00 91.30
35000 |* 2 65 2.90 94.20
40000 |* 1 66 1.45 95.65
45000 | 0 66 0.00 95.65
50000 |** 3 69 4.35 100.00
|
-----+----+----+----+----+
10 20 30 40 50
SAS システム 6
15:12 Wednesday, April 23, 2008
Frequency
60 + *****
| *****
45 + *****
| *****
30 + *****
| *****
15 + *****
| ***** *****
--------------------------------------------------------------------
10000 20000 30000 40000 50000
TOTAL Midpoint
stat システム上の SAS に関して言えば、SAS の出力中の日本語は
「EUC コード」を使って表現されているので、
SAS の「計算結果」を Windows マシンに転送する前に
「EUC コード」を「Shift-JIS コード」に変換する必要が生じる。
また、漢字を含む元データを stat システム上で解析したいのなら、
転送後、stat システム上で EUC コードに変換してから利用する必要がある。
同様の理由で、ファイル名に漢字を使うのも避けるべきである。
[Lesson 4-4] Windows 側で読み出せるか、実際に転送してみよ。
[補足] nkf には他に、「-e」オプション(EUCコードに変換)、 「-j」オプション(JISコードに変換)がある。