SAS を使ってみよう

統計処理 01 クラス : 第4回目(05/27/99)

データを電子化したり stat システム(UNIX)に転送する方法は修得したので、 いよいよお待たせの SAS を使ってみよう。 今回は SAS を使うために知っておいてもらいたいコマンドを中心に解説する。 なお副読本として、MNC のセミナー用テキスト「SAS 入門」を配布しておくので 適宜参照していただきたい。
  1. SAS を使うには? 終るには? : SAS 入門 Page 3〜6
    1. SAS は stat システム上に存在
      「スタート」→「プログラム(P)」→「stat システム」→「stat1」とクリックする。
      (stat1 と 2, 3 はどれでも対等。混み具合いによって変更してよい)。
      [注意] stat システム内ではマウスは使えない。 以後の入力はキーボードからのみ行う。

    2. 「login:」、「Password:」と表示されるので、 それぞれ stat システム用の IDとパスワードを入力する。 なお、パスワードはセキュリティの都合上、画面には表示されない。

    3. SAS を起動するには「vtsas」と入力してリターンキーを押す。
      画面が区切られたような領域に分割されて表示される。

    4. SAS を終了するには「コマンド =>」 の右側にカーソルをカーソル移動キー(矢印キー)で移動させ「bye」と入力して リターンキーを押す。大なり記号の直後に空白() が一つ必要なので注意せよ。

    5. stat システムから戻るには「logout」と入力してリターンキーを押す。

  2. SAS を操作してみよう : Lesson 4-1 : SAS 入門 Page 11〜21
    1. まずは stat システムにログインする。 : 上述参照

    2. 「vtsas」と入力してリターンキーを押す。

    3. 領域が三種類ある : Program, Output, Log : 役割はおいおい説明
      各ウインドウを行き来しよう。コマンド行に以下のコマンドを。Page 12
      • プログラムエリアへ : PGM
      • ログエリアへ : LOG
      • アウトプットエリアへ : OUTput

    4. 何はともあれプログラムを入力 : les0401.sas
      • プログラムエリアに入力していく : PGM
      • 領域を大きくしたい : ZOOM
      • テンキーは使えない。キーボード上部の数値キーで入力。

       /* Lesson 4-1 */
       /*    File Name = les0401.sas   05/27/99   */
      
      data kenshin;
        input name $ height weight;
      cards;
        asakawa     156  44
        sakaguchi   165  58
        yano        157  43
        imamura     159  44
        esaka       162  44
        takahashi   159  59
      ;
      proc print data=kenshin;
      run;
      proc means data=kenshin;
      run;
      

    5. 実行してみよう
      プログラムエリアの「コマンド => 」の右にカーソルを移動させて「SUB」

    6. 出力結果 : les0401.out
                                    SAS システム                             1
                                                 20:33 Wednesday, May 26, 1999
      
                        OBS    NAME        HEIGHT    WEIGHT
      
                         1     asakawa       156       44  
                         2     sakaguch      165       58  
                         3     yano          157       43  
                         4     imamura       159       44  
                         5     esaka         162       44  
                         6     takahash      159       59  
      
                                    SAS システム                             2
                                                 20:33 Wednesday, May 26, 1999
      
        Variable  N          Mean       Std Dev       Minimum       Maximum
        -------------------------------------------------------------------
        HEIGHT    6   159.6666667     3.3266600   156.0000000   165.0000000
        WEIGHT    6    48.6666667     7.6332606    43.0000000    59.0000000
        -------------------------------------------------------------------
      

    7. 特に知っておくべきコマンド :
      • 実行 : SUBmit : プログラムの実行。Page 15
      • 前進 : FORWard : 複数画面にまたがっている場合。Page 14
      • 後退 : BACKward : 複数画面にまたがっている場合。Page 14

  3. そのほかに知っておくと便利なコマンド

  4. プログラムを有効活用しよう
    1. 保存 : 自分のホームディレクトリに判りやすいファイル名で保存。
      • プログラムエリアのコマンド行で : FILE 'filename.sas'
      • アウトプットエリアのコマンド行で : FILE 'filename.out'
      • ログエリアのコマンド行で : FILE 'filename.log'
    2. 呼び出し : 自分のホームディレクトリから。
      • プログラムエリアのコマンド行で : INC 'filename.sas'

    3. プログラムや出力の印刷 : レポートの作成等に
      • stat システムにはプリンタがないので
        第2回 で説明した転送方法で Win 側に持ってくる。: SAS 入門 Page 7〜10
      • 印刷するだけなら、「H:」ドライブ辺りに転送して メモ帳や MS-Word (や秀丸等のエディタ)に読みこんで印刷。
        ファイル名の拡張子(.sas、.out等)に注意しないと見つけられない。
      • 印刷の仕方等については、「PC・ネットワーク利用ガイド」を参照のこと。

    [おまけ(発展)]
    予想ではここまでで時間が無くなってしまい、 これ以降の実習は時間内に行えないと思うが、 もし興味があれば、以下のプログラムと出力を参考(解読?)にして、 自分の収集したデータを解析してみよ。詳しい解説は次回に行う。
    1. データをファイルから読み込む
      データが追加されたり、別クラスのデータを解析したくなったら??
      : データをファイルから読み込んで処理しよう
      : 先週、電子化した個人のデータファイル等
      : 大量データや定型的な処理に有効

      Lesson 4-2 : Lesson 2-1 で作ったデータをファイルから読み込んで各変量の平均を求めよう。 なお、ファイル名は各自で命名したものを指定せよ。 ここでは「les0202.prn」という名前で説明する。

      1. 新しいプログラムを作る時にはまず現在のプログラムを消去
        プログラムエリアのコマンド行で : [入力] CLEAR
      2. プログラム : les0402.sas
         /* Lesson 4-2 */                             
         /*    File Name = les0402.sas   05/27/99   */
                                                      
        data gakusei;                                 
          infile 'les0202.prn';                       
          input shintyou taijyuu kyoui;               
                                                      
        proc print data=gakusei(obs=5);                      
        run;                                          
        proc means data=gakusei;                      
        run;                                          
        
      3. 出力結果 : les0402.out

                                      SAS システム                             1
                                                   21:51 Wednesday, May 26, 1999
        
                          OBS    SHINTYOU    TAIJYUU    KYOUI
        
                            1       167         60        94 
                            2       172         58         . 
                            3       156         61        90 
                            4       162         62       100 
                            5       166         60        88 
        
                                      SAS システム                             2
                                                   21:51 Wednesday, May 26, 1999
        
          Variable   N          Mean       Std Dev       Minimum       Maximum
          --------------------------------------------------------------------
          SHINTYOU  10   166.6000000     4.5995169   156.0000000   172.0000000
          TAIJYUU   10    59.6000000     1.7763883    57.0000000    62.0000000
          KYOUI      6    90.0000000     6.6932802    80.0000000   100.0000000
          --------------------------------------------------------------------
        
      4. プログラムの保存 :
        プログラムエリアのコマンド行で : [入力] FILE 'les0402.sas'

    2. 次回は... : 6月10日 14:45
      • 6月3日は休講(演習にしたかったのだが...)
      • プログラムの個々の行についての解説(上記 2節の内容)
      • データをファイルから読み込んで解析(上記 6節の内容)
    [DIR]講義のホームページへ戻ります