前のページ|次のページ

REMOVEステートメント

SASデータセットからオブザベーションを削除します。

該当要素: DATAステップ
カテゴリ: アクション
種類: 実行
制限事項: 必ずMODIFYステートメントと組み合わせて使用します。

構文

REMOVE <data-set-name(s)>;

引数なし

引数を指定しない場合、REMOVEステートメントはDATAステートメントに指定されているすべてのデータセットから現在のオブザベーションを削除します。

引数

data-set-name

オブザベーションを削除するデータセットを指定します。

制限事項 このデータセット名は、DATAステートメントおよび1つ以上のMODIFYステートメントにも指定する必要があります。
ヒント データセット名を使用するかわりに、オペレーティングシステムでサポートされている構文を使用してファイルの物理パス名を指定することができます。物理パス名は一重引用符または二重引用符で囲む必要があります。

詳細

オブザベーションは、データセットを管理するエンジンによって、物理的または論理的に削除されます。REMOVEステートメントの使用は、オブザベーションのデフォルトの置き換えより優先されます。DATAステップでREMOVEステートメントを使用する場合、DATAステップのすべての出力を明示的にプログラムする必要があります。

比較

  • OUTPUT、REPLACE、REMOVEの各ステートメントの使用は、DATAステップの最後に実行されるデフォルトの書き込みアクションより優先されます。(OUTPUTがデフォルトのアクションです。ただし、MODIFYステートメントを使用するとREPLACEがデフォルトのアクションになります。)DATAステップでこれらのステートメントのいずれかを使用する場合、新しいオブザベーションのすべての出力を明示的にプログラムする必要があります。
  • OUTPUT、REPLACE、REMOVEの各ステートメントは互いに独立して動作します。順序が論理的に正しければ、同じオブザベーションに複数のステートメントを適用できます。
  • 特定のオブザベーションに対してOUTPUTステートメントとREPLACEまたはREMOVEステートメントの両方を実行する場合、オブザベーションのポインタの位置を正しく保つため、OUTPUTステートメントを最後に実行します。
  • REMOVEステートメントは物理的または論理的な削除が実行できるため、すべてのSASデータセットエンジンおいて、REMOVEとMODIFYステートメントの併用が可能です。DELETEステートメントおよびサブセット化IFステートメントは、どちらも物理的な削除のみを実行します。そのため、エンジンによっては、MODIFYステートメントとこれらのステートメントを併用できない場合があります。

例: データセットからオブザベーションを削除する

この例では、SASデータセットからオブザベーションを1つ削除します。
libname perm 'SAS-library';
data perm.accounts;
   input AcctNumber Credit;
   datalines;
1001 1500
1002 4900
1003 3000
;
data perm.accounts;
   modify perm.accounts;
   if AcctNumber=1002 then remove;
run;
proc print data=perm.accounts;
   title 'Edited Data Set';
run;
PROC PRINTステートメントの実行結果を次に示します。
編集したデータセット
編集したデータセット

関連項目:

前のページ|次のページ|ページの先頭へ