SAS组合3个数据集并分配其相应的数据集名称

use*_*seR 2 sas

我有3个数据集如图所示:

data dataA;
    input id;
    datalines;
1001
1002
1003
;
run;

data dataB;
    input id;
    datalines;
1001
1002
1003
;
run;

data dataC;
    input id;
    datalines;
1001
1002
1003
;
run;
Run Code Online (Sandbox Code Playgroud)

我想有输出:

1001 dataA
1002 dataA
1003 dataA
1001 dataB
1002 dataB
1003 dataB
1001 dataC
1002 dataC
1003 dataC
Run Code Online (Sandbox Code Playgroud)

我知道如何使用组合三个数据集

data datacombine;
  set dataA dataB dataC;
run;
Run Code Online (Sandbox Code Playgroud)

NEO*_*men 7

如果您使用SAS 9.2或更高版本,则可以使用http://support.sas.com/kb/34/513.htmlINDSNAME选项

data datacombine;
format dsname datasetname $25.; 
  set dataA dataB dataC indsname=dsname;
  datasetname=dsname;
run;
Run Code Online (Sandbox Code Playgroud)