我在使用不同的no组合两个表时遇到问题。列。
说我的第一张桌子是 table1 :
table1
t1_col_1 t1_col_2 t1_col_3 ... t1_col_13
我的第二个表是 table2 :
table2
t2_col_1 t2_col2 t2_col3 t2_col4
现在,如果我输入命令:
data table3;
set tabel1 table2;
run;
table3的输出是什么?
SAS链接说这个命令执行连接: http://support.sas.com/documentation/cdl/en/lrcon/62955/HTML/default/viewer.htm#a001107839.htm
由于列没有。不同,连接会引起问题。
那么这个命令究竟是如何工作的呢?在这种情况下它的输出是什么?
答案 0 :(得分:1)
追加(连接)两个或多个数据集基本上只是将数据集与堆叠在一起的同名变量中的值一起堆叠。每个数据集中的唯一变量将在新的组合数据集中形成自己的变量。现在我们有不同数量的变量。本文介绍了如何在具有不同变量的数据集之间进行连接:http://support.sas.com/documentation/cdl/en/basess/58133/HTML/default/viewer.htm#a001312944.htm
例如,假设我们有:
data work.table1;
input col1 $ col2 col3 col4;
datalines;
George 10 10 10
Lucy 10 10 10
;
run;
data work.table2;
input col1 $ col2;
datalines;
Shane 3
Peter 3
;
run;
data work.table3;
set table1 table2;
run;
输出:
col1 col2 col3 col4
George 10 10 10
Lucy 10 10 10
Peter 3 . . <== These entries are
Shane 3 . . empty.
col1和col2存在于两个集合中,因此它们内部的值将被堆叠。 col3和col4仅存在于table1中,因此新组合集中的一些值将为空。