単一のキー変数なしで2つのデータセットをマージしようとしています。キー変数なしのsasデータセットのマージ
study_id.....round....other variables different between the two sets
A000019....R012....etc
A000019....R013
A000047....R013
A000047....R014
A000047....R015
A000267....R014
これは私のコードです...間で共有2つの変数のみです私はstudy_idラウンドでマージしようとしました
DATA RAKAI.complete;
length study_id $ 8;
MERGE hivgps2 rccsdata;
BY study_id round;
RUN;
:データは、両方のデータセットでこのようになりますデータセット。しかし、2つのセットを積み重ねるだけで、正確なIDの数が2倍になります。 "study_id"と "round"の組み合わせは固有の識別子を提供しますが、変数はありません。両方のデータセットで共有される2つの変数を組み合わせることによって、新しい一意のIDをコード化するのが最も理にかなっていますか?私は私がここに潜在的な不要なスペースに対処することを意図したコードを投稿することができます実現
多くのおかげ
。
DATA hivgps2;
SET hivgps2;
study_id = compress(study_id);
round= compress(round);
RUN;
DATA rccsdata;
SET rccsdata;
study_id = compress(study_id);
round=compress(round);
RUN;
データを見ると、ほぼ完全に重なるはずです。私はフォーマットがありません、値は同じに見えるし、潜在的なスペースに対処しようとするためにそこにこのコードを持っていました、私が想像するフォーマット混乱のおかげで申し訳ありません。 DATA hivgps2; SET hivgps2; study_id =圧縮(study_id); round = compress(round); RUN; DATA rccsdata; SET rccsdata; study_id =圧縮(study_id); round = compress(round); RUN; – jkh107
甘いイエストムは働いた!私はそのコードを勉強する必要があるので、次回にやることができます。 – jkh107