前のページ|次のページ

DATALINESステートメント

データ行の始まりを示します。

該当要素: DATAステップ
カテゴリ: ファイル操作
種類: 宣言
別名: CARDS, LINES
参照項目: データ行にセミコロンを含めることはできません。データにセミコロンが含まれている場合は、DATALINES4ステートメントを使用してください。

構文

DATALINES;

引数なし

外部ファイルに格納されているデータを読み込むのではなく、プログラムに直接入力するデータを読み込む場合は、DATALINESステートメントをINPUTステートメントとともに使用します。

詳細

DATALINESステートメントの使用

DATALINESステートメントはDATAステップの最後にあるステートメントです。このステートメントのすぐ後に最初のデータ行が続きます。入力データの最後を示すには、ヌルステートメント(1つのセミコロン)を使用します。
1つのDATAステップでは、DATALINESステートメントを1つのみ使用できます。複数のデータのセットを入力する場合は、個々にDATAステップを使用します。

長いデータ行の読み込み

データ行の長さを扱うには、XisError: No pubcode in link data found for lesysoptsrefシステムオプションを使用します。CARDIMAGEオプションを使用すると、ブランクが埋め込まれた80バイトのパンチカードイメージのようにデータ行を処理します。NOCARDIMAGEを使用すると、全体で80列よりも長いデータ行を処理します。

インストリームデータでの入力オプションの使用

DATALINESステートメントには、データの読み込みに使用できる入力オプションはありません。ただし、DATALINESステートメントとINFILEステートメントを組み合わせて使用すると、いくつかのオプションを使用できます。INFILEステートメントにDATALINESステートメントを指定してデータのソースを定義した後、必要なオプションを指定します。詳細については、オプションを使用したインストリームデータの読み込みを参照してください。

比較

  • データにセミコロンが含まれていない場合は、常にDATALINESステートメントを使用します。データにセミコロンが含まれている場合は、DATALINES4ステートメントを使用します。
  • 次のSASステートメントを使用しても、データの読み込みやデータ格納先の指定を行えます。
    • INFILEステートメントは、他のファイルに格納されている生データ行を指定します。INPUTステートメントは、指定されたデータ行を読み込みます。
    • %INCLUDEステートメントは、SASプログラムステートメントやSASファイルまたは外部ファイルに格納されているデータ行を現在のプログラムに読み込みます。
    • SET、MERGE、MODIFY、UPDATEの各ステートメントは、既存のSASデータセットからオブザベーションを読み込みます。

例1: DATALINESステートメントの使用

この例では、DATAステップのオブザベーションごとに、データ行を読み込んだ後、2つの文字変数NAMEとDEPTに値を割り当てます。
data person;
   input name $ dept $;
   datalines;
John Sales
Mary Acctng
;

例2: オプションを使用したインストリームデータの読み込み

この例では、インストリームデータを読み込むINFILEステートメントで使用可能なオプションを利用します。DELIMITER=オプションを使用すると、リスト入力を使用して、ブランクではなくカンマで区切られたデータの値を読み込めます。
data person;
   infile datalines delimiter=','; 
   input name $ dept $;
   datalines;                      
John,Sales
Mary,Acctng
;

関連項目:

システムオプション:
XisError: No pubcode in link data found for lesysoptsref
前のページ|次のページ|ページの先頭へ