sas:数据集的横向合并、纵向合并

横向拼接最好指定主键,否则set拼接可能出错

比较推荐:

PROC SQL;
CREATE TABLE S.E AS
SELECT * FROM C
LEFT JOIN A
ON C.NAME=A.NAME;
QUIT;

/*实现数据集的纵向合并,变量不同时,表现为缺失值*/

DATA A12;

SET A1 A2;

RUN;


/*实现数据集的横向合并,取观测较少者*/

DATA A12;

SET A1;

SET A2;

RUN;

APPEND:实现数据集的追加,纵向追加

proc append base=master  data=add force;
run;

1.为了增加append过程的效率,最好将较大数据量的数据集作为base。

2.master与add的变量个数与属性最好相同,否则以master规定的变量类型为主,出现add变量的长度的截取

3.可以添加选项force,但是为了减少出现错误或减少warning,尽量少用force选项,而是尽量保证两个数据集有完全相同的变量和格式。

MERGE

详细解说见

http://blog.sina.com.cn/s/blog_dd08c3b70102veuk.html

原文地址:https://www.cnblogs.com/Anni-love-Ferris-wheel/p/6654990.html