DROP SAS

【SAS】DROPオプションの位置による処理の違い

投稿日:2022年1月12日 更新日:

今回はDROPオプションの付き方によって、結果が異なるケースを解説します。

(対比:KEEP 【SAS】KEEPはカラムの選択に使える。 | ビジネスイッチ (how-to-business.com)


/* drop_1 */
data data1;
  Id1=1111; Id2=1111; Id3=1111; Id4=1111;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=3333;
    output;
run;

data data2; set data1(drop=Id2 Id3);
  Id5 = Id1 + Id2 + Id3 + Id4;
run;

  • setステートメントに付けると足し算の前にId2、Id3が削除される。
  • Id5 = Id1 + Id2 + Id3 + Id4により、Id2、Id3は出力される。

/* drop_2 */
data data1;
  Id1=1111; Id2=1111; Id3=1111; Id4=1111;
    output;
  Id1=2222; Id2=2222; Id3=2222; Id4=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333; Id4=3333;
    output;
run;

data data2(drop=Id2 Id3); set data1;
  Id5 = Id1 + Id2 + Id3 + Id4;
run;

  • dataステートメントに付けると足し算の後にId2、Id3が削除される。
  • Id5はId2、Id3の値も含む。

-DROP, SAS

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【SAS】SORTプロシージャはBYで指定した変数で並べ替える その1 昇順

今回はSORTプロシージャについて解説します。 /*sort1*/ data data1; id1=”1111″; id2=”1111″; output; id1=”1111″; id2=”2222″ …

【SAS】ORDER BY句無しで抽出した際の出力順【SQL】

この記事の要約:「ORDER BYを使わない場合、SQLで抽出した際の並び順は保証されない」 SQL文で抽出を行った際に、困ったことが起きました。 同じPG文なのに1回目と2回目で出力結果に違いがある …

【SAS】MEANSも集計に便利(デフォルトで結果を出力)【NOPRINT】

今回はMEANSについて解説します。 似た文法でSUMMARYプロシージャがあります。 【SAS】SUMMARYは集計に便利 今回のMEANSプロシージャも集計を行うのですが、こちらはデフォルトで「結 …

【SAS】LABELオプションは変数名ではなく、ラベル名を出力する。【PRINTプロシージャ】【SAS Base Programming対策2】

今回はLABELオプションについて解説します。 SAS Base Programmingの四択問題でも出されそうな感じです。 /* label */ data data1; attrib Id1 le …

【SAS】VERIFYは引数の文字を含まない最初の位置を返す

今回はVERIFYについて解説します。 /*正常形*/ data data1; Id1=”AAAA”; output; Id1=”ABAB”; output; Id1=”ABCD”; output; …