前のページ|次のページ

PUTステートメント、カラム

変数の値を出力行の指定した列に書き込みます。

該当要素: DATAステップ
カテゴリ: ファイル操作
種類: 実行

構文

引数

variable

変数の名前を指定します。指定した変数の値が書き込まれます。

start-column

出力行での、値を書き込むフィールドの開始列を指定します。

-end-column

この値のフィールドの最終列を指定します。

ヒント 出力行で必要な列数が1つの場合、end-columnの指定を省略することができます。
end-columnが省略されているので、文字変数GENDERの値は列16にのみ存在します。
put name 1-10 gender 16;

.decimal-places

数値で使用する小数点以下の桁数を指定します。

範囲 正の整数
ヒント dの値に0を指定したり、dの値を省略する場合は、小数点なしの値が書き込まれます。
PUTステートメントでカラム出力の使用

@| @@

次のPUTステートメントの実行時に使用できるように出力行を保持します。このラインホールド指定子は、後置@および後置@@と呼ばれます。

要件 後置@または後置@@は、PUTステートメントの最後の項目として指定する必要があります。
参照項目 ラインホールド指定子の使用

詳細

カラム出力では、列番号は出力行での各変数の値を出力する位置を示します。指定した列数より少ない列数で値を出力できる場合、文字変数は左寄せで、数値変数は右寄せで表示されます。
1つのPUTステートメントでの列の指定数に制限はありません。出力行のどの位置でも値を書き込むことができます。また、同じステートメントですでに値を書き込んだ列の上に値を上書きすることもできます。1つのPUTステートメントで、列の出力を他の出力スタイルと組み合わせられます。詳細については、1つのPUTステートメントで複数の出力スタイルを使用するを参照してください。

例: PUTステートメントでカラム出力の使用

PUTステートメントでカラム出力を使用する例を次に示します。
  • 次のPUTステートメントではカラム出力を使用します。
    data _null_;
       input name $ 1-18 score1 score2 score3;
       put name 1-20 score1 23-25 score2 28-30
           score3 33-35;
       datalines;
    Joseph                  11   32   76
    Mitchel                 13   29   82
    Sue Ellen               14   27   74
    ;
    このプログラムを実行すると、次の行がSASログに出力されます。
    ----+----1----+----2----+----3----+----4
    Joseph                 11   32   76
    Mitchel                13   29   82
    Sue Ellen              14   27   74
    注: 理解しやすいようにルーラー付きの行が表示されていますが、PUTステートメントではこの行は生成されません。
    文字変数NAMEの値は列1から出力されます。また、指定したフィールド(列1から20)に左寄せで表示されます。数値変数SCORE1からSCORE3の値は、各フィールドに右寄せで表示されます。
  • 次のステートメントでも同じ出力行が生成されますが、SCORE1の値が最初に書き込まれ、NAMEの値が最後に書き込まれます。
    put score1 23-25 score2 28-30
        score3 33-35 name $ 1-20;
  • 次のDATAステップでは、絡む出力に小数点以下の桁数を指定します。
    data _null_;
        x=11;
        y=15;
        put x 10-18 .1 y 20-28 .1;
    run;
    このプログラムを実行すると、次の行がSASログに書き込まれます。
    ----+----1----+----2----+----3----+----4
                  11.0      15.0

関連項目:

ステートメント:
前のページ|次のページ|ページの先頭へ