SAS のプログラムとデバッグ

情報処理H : 第3回目(10/18/96)

  1. プログラム : kenshi01.sas

    Lesson 3-1: プログラムウインドウに前回のプログラムを呼び出そう

    プログラムウインドウのコマンド行で : [入力] inc 'kenshi01.sas'

  2. プログラムの説明 : 各単語に意味がある

     /* Lesson 2-1 */                          : コメント
     /*   File Name = kenshi01.sas 10/04/96 */ : 後々の記録のためのメモ
                                               :
    data kenshin;                              : データ名の定義
      input name $ height weight;              : 読み込む変量名、型
    cards;                                     : データの始まりを示す
      asakawa     156  44                      : Case No.1
      sakaguchi   165  58                      :         2
      yano        157  43                      :         3
      imamura     159  44                      :         4
      esaka       162  44                      :         5
      takahashi   159  59                      :         6
    ;                                          : データの終り
    proc print data=kenshin;                   : 読み込んだデータの表示
    run;                                       : 上記の実行(出力A)
    proc univariate data=kenshin;              : 基礎統計量の算出
    run;                                       : 上記の実行(出力B)
    
  3. 実行時にエラーがなければ良いのだが... : デバッグ

    プログラムウインドウのコマンド行で : [入力] sub

    アウトプットウインドウに順に結果 (kenshi01.out)が表示されるのなら正常 : ログウインドウ (kenshi01.log)

    エラーがあればログウインドウに表示される : ログウインドウ (kenshi01.log.error)

    綴りミスはある程度修正されるが、致命的なミスの時は中止される

    [例] ERROR: プロシジャ YUNIVARIATE はありません.

    Lesson 3-2: エラーの修正方法

    1. 画面が三種類ある : Program, Output, Log

      必要に応じて各ウインドウを行き来しよう。コマンド行で。 See Page 11
      1. プログラムウインドウへ : PGM

      2. ログウインドウへ : LOG

      3. アウトプットウインドウへ : OUTput

    2. プログラムのエラー個所を ログウインドウ (kenshi01.log.error)で確認

    3. プログラムウインドウに移って該当個所を修正

    4. 再実行しエラーがなくなるまで修正を繰り返す

  4. 出力結果の説明 : アウトプットエリア (kenshi01.out)

    1. 読み込んだデータの表示(出力A)
    2. 縦方向にケース、横方向に変量
    3. 左端にケース番号
    4. 入力が期待通りかを確認: 数値のずれ、異常値、...

  5. 基礎統計量の算出(出力B)
  6. 各変量ごとに基礎統計量を算出: 平均、分散、四分位値、...
  7. データの概要を知ることができる (注意: この例ではケース数が少なすぎる)

  • 特定の変数の解析

    [例] 変数群の中から身長のみを計算対象とする
    proc univariate data=kenshin;              : 基礎統計量の算出
       var height;                             : 身長について
    run;                                       : 
    
  • データ転送

    Lesson 3-3: ファイルの転送(送受信): Windows <===> UNIX

    1. セミナー用テキストのPage 6〜9を参照

    2. 転送するファイルは、皆さんのアンケートの一部: 性別、身長、体重、胸囲

      データの保存場所: J:\センター設置科目\情報処理H\gakusei1.dat

  • データが追加されたり、別クラスのデータを解析したくなったら?? : データをファイルから読み込んで処理しよう

    Lesson 3-4: 皆さんの 性別、身長、体重、胸囲データ(gakusei1.dat) の平均を求めよう

    1. 新しいプログラムを作る時にはまず消去

      プログラムウインドウのコマンド行で : [入力] clear

    2. プログラム : anke01.sas

       /* Lesson 3-4 */                              :
       /*    File Name = anke01.sas   10/16/96   */  :
                                                     :
      data gakusei;                                  :
        infile 'gakusei1.dat';                       : ファイル名の指定
        input seibetsu $ shintyou taijyuu kyoui;     : 変量名、型
                                                     :
      proc print data=gakusei;                       :
      run;                                           :
      proc means data=gakusei;                       : 平均値の算出
      run;                                           :
      
    3. 出力結果 : anke01.out

    4. プログラムの保存: プログラムウインドウのコマンド行で : [入力] file 'anke01.sas'

  • 演習

    Lesson 3-5: 皆さんの 性別、身長、体重、胸囲データの基礎統計量を求めてみよう

  • 来週は、...
    • 性ごとの分析、レポート作成について、...
    [DIR]講義のホームページへ戻ります