SAS合并多个表
我想知道合并多个表的最佳方法是什么。我在所有表中都有一个唯一的标识符。我应该在对表排序后一步连接所有表,还是应该一步一步地合并表。SAS合并多个表,sas,Sas,我想知道合并多个表的最佳方法是什么。我在所有表中都有一个唯一的标识符。我应该在对表排序后一步连接所有表,还是应该一步一步地合并表。 这有关系吗?您可以一步完成多个合并。然而,这不是最安全的方法。如果您的数据可能存在缺陷,最好一步一步地进行。我知道,最好是一次合并一个步骤,但这是你的决定 proc sort data=data1; by id; run; proc sort data=data2; by id; run; proc sort data=data3; by id; run; dat
这有关系吗?您可以一步完成多个合并。然而,这不是最安全的方法。如果您的数据可能存在缺陷,最好一步一步地进行。我知道,最好是一次合并一个步骤,但这是你的决定
proc sort data=data1; by id; run;
proc sort data=data2; by id; run;
proc sort data=data3; by id; run;
data combo;
merge data1(in=a) data2(in=b) data3(in=c);
by id;
if a and b and c; /*Inner join. Change as needed. */
run;
这相当于:
data partial;
merge data1(in=a) data2(in=b);
by id;
if a and b;
run;
data combo;
merge partial(in=a) data3(in=b);
by id;
if a and b;
run,
您可以在一个步骤中进行多个合并。然而,这不是最安全的方法。如果您的数据可能存在缺陷,最好一步一步地进行。我知道,最好是一次合并一个步骤,但这是你的决定
proc sort data=data1; by id; run;
proc sort data=data2; by id; run;
proc sort data=data3; by id; run;
data combo;
merge data1(in=a) data2(in=b) data3(in=c);
by id;
if a and b and c; /*Inner join. Change as needed. */
run;
这相当于:
data partial;
merge data1(in=a) data2(in=b);
by id;
if a and b;
run;
data combo;
merge partial(in=a) data3(in=b);
by id;
if a and b;
run,
没有特别的理由一步一步地去做,除非你有冲突的变量名需要解决,或者如果你的组合逻辑很复杂,你担心混淆一些东西。在任何情况下,都没有功能上的原因
join
要简单一些,特别是语法更简单,所以它与SQL的情况有些不同。没有特别的理由一步一步地执行,除非您有冲突的变量名需要解决,或者,如果你的组合逻辑很复杂,你担心混淆某些东西。在任何情况下,都没有功能上的原因join
要简单一些,特别是语法更简单,所以它与SQL的情况有些不同