由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Statistics版 - one quick question about concatenating data in SAS
相关主题
如何比较两个proc contents的结果?sas大牛们这个要怎么实现呀
SAS -proc transpose 急问!请教怎么样转置?
弱问SAS:如何找出两个data sets中missing的obs求高人指点一个SAS数据的转换问题
how to transpose this data set in SAS?求助, 读取大型数据的问题
[SAS] data set options (obs=) in output tables[合集] 求助,怎样在SAS里读数据的column name?
SAS dataset 中,怎么把数据往上移一行?A question in splitting dataset
SAS problem ask for help!nodupkey 删除的observations怎么查看?
怎么用SAS做加减乘除问个效率问题 SQL vs data step,大数据量
相关话题的讨论汇总
话题: name话题: var话题: data话题: proc话题: sas
进入Statistics版参与讨论
1 (共1页)
a****y
发帖数: 1035
1
我用
data sample;
set A B;
run;
将A,B两个file 连接起来,请问如何能得到一个列表,里面包含所有variables的name
, label, 最重要的是每个variable原先属于哪个文件(A 或者 B)?
proc contents 可以做到吗?如果可以,有什么option可以看到variable属于哪个文件?
谢谢 !!
a***d
发帖数: 336
2
you can query sashelp.Vcolumn
it contains library name, member name, column Name, column label and so on.

name
件?

【在 a****y 的大作中提到】
: 我用
: data sample;
: set A B;
: run;
: 将A,B两个file 连接起来,请问如何能得到一个列表,里面包含所有variables的name
: , label, 最重要的是每个variable原先属于哪个文件(A 或者 B)?
: proc contents 可以做到吗?如果可以,有什么option可以看到variable属于哪个文件?
: 谢谢 !!

y********0
发帖数: 638
3
象aloud说的,sashelp.vcolumns里,dictionary.columns都有这些变量信息.
用proc datasets 或者 contents都能输出.
可以把两个文件的名字列表各自输出,然后再merge一下.
这是我能想到的方法,不知道有没有更简单的.
譬如:
proc datasets lib=work nolist;
contents data=one out=vone (keep=name label);
contents data=two out=vtwo (keep=name label);
quit;
data vcombine;
merge vone(in=in_one) vtwo(in=in_two);
by name;
if in_one and in_two then from="AB";
else if in_one and in_two=0 then from="A";
else from="B";
run;

name
件?

【在 a****y 的大作中提到】
: 我用
: data sample;
: set A B;
: run;
: 将A,B两个file 连接起来,请问如何能得到一个列表,里面包含所有variables的name
: , label, 最重要的是每个variable原先属于哪个文件(A 或者 B)?
: proc contents 可以做到吗?如果可以,有什么option可以看到variable属于哪个文件?
: 谢谢 !!

a****y
发帖数: 1035
4
非常感谢楼上二位!!
d******9
发帖数: 404
5
If you like, you can also use Proc Transpose to do it. It will let you get
the source of variables.
data A;
input ID Name $;
cards;
001 Peter
112 Jason
189 Alice
;
run;
data B;
input ID $ Age Sex $ ;
cards;
227 35 F
189 29 F
336 51 M
;
run;
proc transpose data=A(obs=1) out=AA(keep=var) Name= Var;
var _all_;
run;
proc transpose data=B(obs=1) out=BB(keep=var) Name= Var;
var _all_;
run;
proc sort data=AA;
by Var;
run;
proc sort data=BB;
by Var;
run;
data C;
merge AA(in=A) BB(in=B);
by Var;
if A=1 and B=1 then Source='A+B';
else if A=1 then source='A';
else if B=1 then source='B';
else source='N/A';
run;
Obs Var Source
1 Age B
2 ID A+B
3 Name A
4 Sex B
1 (共1页)
进入Statistics版参与讨论
相关主题
问个效率问题 SQL vs data step,大数据量[SAS] data set options (obs=) in output tables
SAS菜鸟请教如果使SAS的output的结果放到一个文件内?SAS dataset 中,怎么把数据往上移一行?
SAS BASE的一道题不明白,青椒SAS problem ask for help!
老问题如何产生missing table怎么用SAS做加减乘除
如何比较两个proc contents的结果?sas大牛们这个要怎么实现呀
SAS -proc transpose 急问!请教怎么样转置?
弱问SAS:如何找出两个data sets中missing的obs求高人指点一个SAS数据的转换问题
how to transpose this data set in SAS?求助, 读取大型数据的问题
相关话题的讨论汇总
话题: name话题: var话题: data话题: proc话题: sas