如何合并两个数据集,以便将“日期”合并为一列,并保留所有其他列?

时间:2019-02-11 21:38:07

标签: merge sas

我正在尝试合并两个数据集。

 Table A

 Date       |      x      |      y
 01.02.12   |      98     |     102
 03.06.18   |      6      |     44
 06.23.14   |      59     |     14


 Table B

 Date      |       w      |    z
01.02.12   |       94     |    94 
07.25.15   |       55     |    65
06.23.14   |       44     |    55

我想合并两个表,以便x,y,w,z都是单独的列,并且日期组合在一起,以便两个表中的每个日期都在新表中列出。

Desired Table

  Date       |      x     |  y     |  w     |   z 
 01.02.12    |     98     |  102   |   94   |   94
 03.06.18    |      6     |   44   |   .    |   .
 07.25.15    |      .     |    .   |   55   |   65
 06.23.14    |     59     |  14    |   44   |   55

有什么建议吗?

2 个答案:

答案 0 :(得分:3)

假设您的两个文件是按DATE排序的,则只需合并它们即可。

data want;
   merge A B ;
   by date;
run;

PS不要使用两位数的年份。记住Y2K。

答案 1 :(得分:2)

编写过程SQL。

proc sql;
    create table DesiredTable as
           select *
           From TableA a
           Full join TableB b on a.Date = b.Date;    
quit;