SAS系统和数据分析拼接和合并数据集参考.doc

SAS系统和数据分析拼接和合并数据集参考.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SAS系统和数据分析拼接和合并数据集参考

拼接和合并数据集 数据集的连接是把两个或两个以上的数据集的观测连接成一个新的数据集。连接的方式有两种:拼接和合并。在SAS数据步中用SET语句可以拼接数据集,而用MERGE语句可以合并数据集。例如,我们有两个数据集A和B,要拼接和合并成新的数据集C,两种不同方法的程序和结果见示意图12.1 所示。 数据集的拼接 数据集的拼接可分成三种主要的拼接情况: 相同变量的数据集拼接 这是最简单的情况,在这种情况下,新生成的数据集就含有这些相同的变量,观测的数目是所有这些数据集的观测总和。例如,数据集A和B都含有两个相同的变量COMMOM和X,且都有三条观测,如图12.2 所示。 用下面程序生成新数据集C有两个相同的变量COMMOM和X,6条观测。 Data A ; Input common x ; Cards ; 9801 1 9802 2 9803 3 Data B ; Input common x ; Cards ; 9801 4 9802 5 9803 6 Data C ; Set A B ; Proc print data=C ; Run; 拼接生成的新数据集C的结果如图12.3所示。 不相同变量的数据集拼接 如果两个数据集A和B含有的变量不完全相同,如上例中数据集B含有的不是COMMON和X变量而是COMMON和Y变量,如图12.4所示。用SET语句拼接A和B数据集后,新生成的数据集C就含有三个变量COMMON、X和Y,观测的数目仍然是所有这些数据集的观测总和,但原数据集中没有的变量在拼接后新数据集中为缺失值。 生成新数据集C的程序如下: Data C ; Set A B ; Proc print data=C ; Run ; 拼接生成的新数据集C的结果如图12.5所示。 按关键字排序后拼接数据集 如果要求新生成的数据集C按共同的关键字例如COMMON排序观测,那么预先要数据集A和B也已按COMMON关键字排序好,可通过排序过程PROC SORT 和BY指明关键字。生成新数据集C的程序如下: Proc sort data= A ; By Common ; Proc sort data= B ; By Common ; Data C ; Set A B ; By Common ; Proc print data=C ; Run ; 拼接生成的新数据集C的结果如图12.6所示。 无论哪一种拼接形式,用SET语句拼接生成的新数据集的观测总数为原各输入数据集观测数之和。 数据集的合并 数据集的合并是通过使用MERGE语句把两个或两个以上数据集中的两条观测或两条以上的观测合并为新生数据集中的一条观测。 数据集的合并可分成两种主要的合并情况: 一对一合并(不带BY语句) 匹配合并(带有BY语句) 一对一合并(不带BY语句) 把一个数据集中的第一条观测同另外一个数据集中第一条观测合并,第二条观测同另外一个数据集中第二条观测合并,以此类推。新生成的数据集中的观测总数为这些数据集中观测个数的最大值。如果相对应的某个数据集已没有观测,则相应的变量值为缺省值。如果在几个数据集中有共同的变量,则在合并后新生成的数据集中只有一个变量,其值为列在MERGE语句中最后一个含有该变量的数据集中的观测值。例如,我们有两个数据集A和B,如图12.7所示。 生成新数据集C的程序如下: Data C ; Merge A B ; Proc print data=C ; Run ; 合并的新数据集C的结果如图12.8所示。 匹配合并(带有BY语句) 如果想把两个或两个以上的数据集按照相同的关键字值合并,则在MERGE语句后面要用BY跟关键字语句。且每一个数据集必须预先按关键字排序好。如果两个数据集中观测的关键字值不匹配,输出所有这些观测,相应的新增变量的值为缺省值。如果两个数据集中观测的关键字值是多对多匹配,要注意新生成的数据集中相同关键字值的观测数为各数据集中这个关键字值的观测数的最大值,相同关键字值的观测按顺序一对一合并,无论哪一个数据集中这个相同关键字值的观测没有了,都取这个相同关键字值的

文档评论(0)

2017meng + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档