かなり単純な質問があります。
$ n>2$であるSASで$n$データセットをマージする方法はありますか。2つのデータセットをマージする方法を知っています。
ありがとう
ガウアー
2 つだけの場合と同じ構文を使用して、複数のデータ セットをマージできます。
data all;
merge ds1 ds2 ds3 ...;
by some_list_of_variables;
run;
マージしたいデータ セットが多数ある場合は、それらすべてを一覧表示するマクロを作成することをお勧めします。
データセットを「マージ」したいとおっしゃいましたが、MERGE ステートメントだけが選択肢ではないことに注意してください。マージ キーが複数のデータセットで重複している場合、MERGE ステートメントを使用すると、問題なく機能する場合でも、論理的に間違った結果が得られる可能性があります。その場合、PROC SQL を使用できます。SAS 9.1 以降では、PROC SQL がより効率的になりました。
例 -
proc sql;
select <fieldlist>
from data1 t1, data2 t2, data3 t3, data4 t4
where <join condition>;
quit;