SAS课程讲义
- 格式:ppt
- 大小:14.06 MB
- 文档页数:328


第三章:对SAS 数据文件的合并与存取
本章主要内容,是介绍SAS软件对整个数据文件的存取及合并的方法,而上一章则主
要是介绍对一个数据文件内变量的读取及处理方法。
我们先讲一讲如何用SAS指令合并两个或多个数据文件。
一、 SAS软件对两个及以上数据文件的合并
在数据分析时,将两个不同的数据文件并为一个,以进行进一步的综合研究,有时是很
必要的。 SAS软件有两种合并两个数据文件的方法。
1、 垂直合并:
垂直合并的方法,适用于已经用DATA类指令建立起的两个或多个SAS数据文件,这
些数据文件必须具有完全相同的变量(名称及内容),换句话说,两个数据矩阵应具有相同
的列数。
这种合并是在一个新的DATA阶段里,通过“垂直合并表格指令”SET来实现的。合并后,一个表格接在另一个表格之下.........。
下面是一个这类合并的图例:
我们有两张分别叫作“Table 1”和“Table 2”的SAS表格,如下图: Table 1 Table 2 obs v1 v2 obs v1 v2
被编码之观测单位,
可为地址,人名… 观测单位
用DATA类指令建立合并这两张表的程式可如下编写:
DATA Table1;
…
…
DATA Table2;
…
…
DATA Table3; 1 yes 10 2 no 20 3 no 15 4 yes 20 5 yes 30 6 no 25 7 no 10 8 no 30 9 yes 20 10 yes 15 SET Table1 Table2;
在程式运行后,我们可以得到一个新的叫作Table3的SAS表格,这张新表包含有名叫
Table1与Table 2的两张SAS数据表,是这两张表的垂直合并。其形式如下图(Table2被接
在表Table1之下): Table3 obs v1 v2 1 yes 10
2 no 20
3 no 15
4 yes 20
5 yes 30
基本描述性统计分析
1.means 过程
SAS系统的BASE模块提供了一些计算基础统计量的过程,如:means过程、univariate过程、corr过程、freq过程等。这些过程可完成单变量或多变量的描述统计量计算。SAS系统Means过程可以用来计算数据集中指定的各变量的一些基本描述性统计量的值(如观测值个数、均值、标准差、方差、偏度、峰度等)。Means过程的一般格式为:
proc means 输入数据集名 选项列表 ;
var 变量列表 ;
class 变量列表 ;
by 变量列表 ;
freq 变量 ;
weight 变量 ;
id 变量列表 ;
output out=输出数据集名 统计量关键字=变量名列表>;
run ;
语句说明:
VAR语句——指定要分析的变量名列;
BY语句——按变量名列分组统计(数据集需事先按该变量名列排序);
CLASS语句——按变量名列分组统计(数据集不需事先排序);
FREQ语句——表明该变量为分析变量的频数;
WEIGHT语句——表明分析变量在统计时要按该变量加权;
ID语句——输出时加上该变量作为索引; OUTPUT语句——指定统计量输出的数据集及输出的内容
(OUT指定统计量的输出数据集名,统计量关键字指定统计量在输出数据集中对应的新变量名).
选项说明:
PROC MEANS语句,选项列表中常用“选项options”有:
①DATA=SAS数据集名:指明要分析的SAS数据集,缺省为最近建立的SAS数据集。
②MAXDEC=k:规定输出结果小数部分的最大位数,
③ALPHA=value:设置置信区间的置信水平α。
④统计量关键词常用的有:
统计量名称 含义 统计量名称 含义
n 未丢失的观测个数 mode 众数,出现频数最高的数
nmiss 丢失的观测个数 sumwgt 权数和
6008849.doc
SAS系统和数据分析
电子商务系列
上海财经大学经济信息管理系IS/SHUFE
**************************Page 1 of 6 第十八课 SAS宏功能简介*
SAS系统提供了强大的宏功能(macro facility),通过创建宏变量和宏能方便地完成:
重复分析任务,大大精减了程序量
从系统获取一些如SAS启动时间、日期、版本号等信息
有条件地执行数据步和过程步
保持程序的对立性和移植性,产生与数据无关的程序
用宏变量在不同数据步和过程步之间传递数据
一. SAS宏变量
宏变量(也称符号变量)属于SAS宏语言的范畴,和数据步中的变量概念是不一样的。除了数据行外,可以在SAS程序的任何地方定义和使用宏变量。数据步变量是和数据集相联系的,而宏变量是独立于数据集的。数据集变量的值取决于正在处理的观测,而一个宏变量的值总是保持不变,直到被明确改变。
1 宏变量的定义
定义一个宏变量的最简单方法是使用宏语句%LET,它的一般形式如下:
%LET 宏变量名=值 ;
宏变量的命名遵从一般的SAS命名规则。宏变量的值不需要加引号,如果值加入引号,则引号被作为宏变量值的一部分。宏变量的值可以是固定的字符串、其它宏变量的引用、宏函数和宏调用。
2 宏变量的引用
为了引用一个宏变量的值,在宏变量前加上一个符号&,格式如下:
&宏变量名
宏变量被引用的效果就是用宏变量的内容直接替代宏变量名。
3 宏变量的使用举例
例如,我们想要打印、图示和分析几个数据集,但又希望避免重复键入每一个数据集名字以修改相同的程序代码。解决方法是用%LET语句创建一个宏变量DSNAME,该宏变量赋值了一个数据集名SURVEY。然后这个宏变量在PROC PRINT等许多过程和TITLE语句中被引用。程序如下: 6008849.doc
第25卷第2期 2012年6月・ 连云港职业技术学院学报 Journal of Lianyungang Technical College v01.25 No.2 June.2012
文章编号:1009—4318(2012)02—0083—03
医学统计学SAS实验课程相关教学问题探讨
汤在祥
(苏州大学,江苏苏州215123)
摘要:SAS软件实验课是医学统计学的重要课程,上好SAS软件实验课对于学生掌握和应用统计学方法具有重要实践 意义。针对医学统计学SAS软件实验课特点,以及当前教学过程中存在的问题,对SAS软件实验课了提出了几点探讨,为提高 医学院校SAS软件实验课的教学效果提供参考。 关键词:医学统计学;SAS软件;实验课程 中图分类号:R一05 文献标识码:A
医学统计学涉及医学领域的诸多学科,方法庞
杂,计算工作量较大。特别是近年来,随着医学基因
组学,以及临床试验统计学理论和方法的不断发展, 在学好医学统计学基本理论的基础之上,掌握相关
的软件显得十分必要。然而,尽管医学院校开展了 本科生和研究生不同层次的医学统计学教材,以及
相关的软件工具教程,但学生普遍反应课本学习难 度大,软件掌握也往往止于应试,教学效果不尽人
意。教学手段落后,方法陈旧,实际操作较少,可能
是造成这一问题的重要原因。本文针对当前高等学 校医学统计学SAS实验课中存在的问题,结合自身
在本科生,研究生,以及医务人员相关培训中的教学
经历,探讨医学统计学软件实验课程中的相关问题, 以供参考。
一、医学统计学课程和SAS软
件
(一)医学统计课程特点 医学统计学是医学生的主干课和必修课,是做
好医学科研工作的重要工具性课程。在医学统计学
教学实践中,无论是教师还是学生都会遇到的问题 就是如何对收集到的数据进行分析,例如方差分析,
多因素分析,随访资料的生存分析,定群研究和病历 对照研究资料分析等。这门学科的重要特点是其工