将SAS数据集与不同的数据组合在一起。列

时间:2013-11-29 09:25:42

标签: sas

我在使用不同的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

由于列没有。不同,连接会引起问题。

那么这个命令究竟是如何工作的呢?在这种情况下它的输出是什么?

1 个答案:

答案 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中,因此新组合集中的一些值将为空。