キーとなる変数でデータセットが一意に定まるかを確認する時はproc sortを使っています。nouniquekeyオプションを使えば、重複してるレコードをだけをデータセットとして作れるので便利ですね。
仮にデータセットhogeが以下の様にあったとして、変数aの値が1obsと2obsで1で重複しています
後は以下の通り重複するobsをKEY_NO_UNIQUEデータセットに格納して、このデータセットにレコードがあればログにerrorを出す、とすれば重複があるかどうかはログを見るだけでokです。詳しい重複の内容はデータセットを見てください。
proc sort data = hoge out = KEY_NO_UNIQUE nouniquekey ;
by a ;
run ;
data _null_ ;
if 0 then set KEY_NO_UNIQUE nobs = _nobs ;
if _nobs ^= 0 then putlog "E" "RROR NoUnique: Check KEY_NO_UNIQUE dataset" ;
stop ;
run ;
0 件のコメント:
コメントを投稿