SAS常用语句

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2011/10/14 17
用INPUT语句时,外部文件中的数据和CARDS语句后面的 数据都采取列表输入的方法,各个变量的值由它们之 间的空格来分隔。为从一行读入多个观测值,应使用 行保持符@@限制读数指针,使其保持在这一行上读 数,直到数据读完为止. 例如:input x y@@; cards; 3.16 2.9 5.8 3 4.9 4.17 ;
19
用infile语句读取数据时,要求外部数据文件 必须是可以在操作系统中用type命令打印出全部 内容的ASCII码文本文件。
2.5 SET语句
SET语句的作用是按照指定的条件从指定的数据 作用 集中读取数据建立新的数据集或将两个数据集中的观 测值纵向连接建立新的数据集。 纵向
2011/10/14
2011/10/14 4
1.3 SAS的程式结构
在SAS中,对数据的处理可划分为两大步骤: (1)将数据读入SAS建立的SAS数据集,称为数据步(data); (2)调用SAS的模块处理和分析数据集中的数据, 称为过程步(proc). 每一数据步都是以data语句开始,以run语句结束. 而每一过程步则都是以proc语句开始,以run语句结束. 当有多个数据步或过程步时,由于后一个data或proc语 句可以起到前一步的run语句的作用,两步中间的run语 句也就可以省略. 但是最后一步的后面必须有run语句,否则不能运行.
3
1.2 SAS的功能键
用功能键可以代替对菜单的点击,,有时比较方便, 最常用的功能键有 F1 :显示帮助信息(help); F4 :显示已经运行的程式(recall); F5 :进入编辑窗口(pgm); F6 :进入日志窗口(LOG); F7 :进入输出窗口(OUTPUT); F8 :程式提交运行(SUBMIT); F9 :显示功能键(KEYS); 以上功能键的用法熟悉之后,还可以定义或修改功能键. 例如,可以定义Ctrl+E为功能键,用来清屏.
2011/10/14
9
〖上机练习1.2〗进入SAS的显示管理系统, 在编辑窗口输入程式: data ex; input no$ sex$ age h w; cards; 10 f 47 156.3 47.1 24 m 38 172.4 61.5 53 m 41 169.2 64.5 46 f 52 158.2 53.6 38 f 39 160.1 48 ; proc sort;by sex; proc means;by sex;var h w; run;
INPUT语句
INPUT语句的作用是描述输入记录中的数据,并把输 入值赋给相应的变量. INPUT语句的格式为: INPUT 数据的变量名、顺序及类型; 用INPUT语句是为了读外部文件的数据或跟 在CARDS语句后面的数据. 除非在INPUT语句中的变量名后有串符号或用字符 的输入格式表示、或该变量事先已被定义为字符型, 否则SAS认定用INPUT语句读入的是数值型 变量的值.
2011/10/14
15
2.2
CARDS语句
CARDS语句的作用是与“;”呼应,标志数据行的开 始与结束。 CARDS语句的格式为: CARDS; 数据行

如果使用CARDS语句,在CARDS的后面必 须紧跟数据行,并且在一个数据步中最多只能有 一个CARDS语句.
2011/10/14
16
2.3
研究生SAS应用讲义
2011/10/14
1
Statistical Analysis System 简称为SAS,可用来分析数 据和编写报告.它是美国SAS研究所的产品,在国际 上被誉为标准软件,在我国深受医学、农林、财经、社 会科学、行政管理等众多领域的专业工作者的好评。 有关SAS的最新信息,可以查看 http://www.sas.com.cn。 SAS采用积木式模块结构, 其中的SAS/STAT模块是目前功能最强的多元统 计分析程序集,可以做回归分析、聚类分析、判别分析、 主成分分析、因子分析、典型相关分析(下学期介绍) 以及各种试验设计的方差分析和协方差分析。 本讲义围绕SAS的应用,讲述以下六部分内容: (1)SAS应用基础; (2)SAS常用语句; (3)SAS服务过程; (4)描述性统计程式; 2011/10/14 (5)方差分析程式; (6)回归分析程式; 2
2011/10/14 12
而输出的结果为: 女生组有3人,身高在156.3至160.1之间, 均值为158.2,标准差为1.90;体重在47.1至53.6之间, 均值为49.6,标准差为3.52; 男生组有2人,身高在169.2至172.4之间,均值为170.8, 标准差为2.26;体重在61.5至64.5之间,均值为63, 标准差为2.12。
2011/10/14
13
第二讲 SAS常用语句
在SAS中,数据集的建立、变换以及对数据集的统计 分析都是通过SAS语句来实现的.常用的SAS语句有:
2.1 DATA语句
DATA语句的作用是表明数据步的开始并给出数据集 的名称。 DATA语句的格式为: DATA 数据集的名称; 数据集的名称必须以英文字母开始, 最长不超过8个字符.
2011/10/14 14
数据集的名称都是由符号“.”分隔的两个部分所组成。 第一部分标记数据集所存储的位置,称作一级名或库 逻辑名. 第二部分标记一个特定的数据集,称作二级名. 如果不想把数据集永久储存在指定的磁盘上,可以只 使用二级名.例如建立一个名为ex的数据集的语句为 “DATA ex;”,这时SAS系统会自动地把ex作为数 据集的二级名,并添加work作为数据集的一级名, 因此在日志窗口显示的信息中记该数据集为work.ex. work.ex 但是这个数据集是临时的,它仅仅在程式运行期间有效, 过后它就被复盖,不能重新调用。
第一讲 SAS应用基础
1.1 SAS的显示管理系统 启动计算机,点击SAS图标后,即可进入SAS的显示管理 系统.在View中有四个主要的窗口(其他的先不考虑): (1)编辑窗口(program editor):编辑程式和数据文件; (2)日志窗口(log):记录运行情况, 显示error信息; (3)输出窗口(output):输出运行的结果; (4)图形窗口(graph):输出图形. 点击 View 菜单中的 Program editor、Log、Output、 Graph 命令可以进入编辑、日志、输出及图形窗口. 按功能键F5、F6、F7也可以进入编辑、日志及输出窗口. 退出SAS有两种方法: (1) 点击 File 菜单中的 Exit 命令; 2011/10/14 点击窗口右上角的×。 (2)
SAS程式的输入及运行步骤如下: (1)进入SAS的显示管理系统; (2)进入并扩大编辑窗口; (3)调出、编辑或修改SAS程式或数据文件; (4)将编辑窗口的SAS程式或数据文件存盘;
2011/10/14 6
(5)按功能键F8或点击“跑步”键运行SAS程 式并注意观察日志窗口中的信息,如有error 出现,应将光标移到日志窗口,用pgup和 pgdn两键翻页,找到错误的所在; (6)将光标移到编辑窗口,按功能键F4或点击 Locals菜单中的 Recall text命令调出已经运行的 SAS程式,改正错误后转入步骤(4), 直到日志窗口中的信息没有error出现为止; (7)将光标移到输出窗口,用pgup和pgdn两键翻 页阅读输出的结果。 〖上机练习1.1〗进入SAS的显示管理系统, 在编辑窗口输入程式: data ex; a=1;b=2;c=3; x=2*a+b; y=a-b/2; z=b+c**3; 2011/10/14 proc; print; run;
20
ຫໍສະໝຸດ Baidu
SET语句的格式为: SET 数据集名表; 例如,从数据集EX中读取数据建立新的 数据集EX1,可编辑语句: DATA EX1; SET EX; 将两个数据集D1和D2中的观测值纵向连接建 立新的数据集D3,可编辑语句: DATA D3; SET D1 D2;
2011/10/14
21
〖上机练习2.1〗进入SAS的显示管理系统, 在编辑窗口输入程式: data d1; input g$ a b @@; cards; 157179134 ; data d2; input g$ a c@@; cards; 2 4 8 2 6 6 2 8 10 ; data d3;set d1 d2; proc print; run; 2011/10/14
2011/10/14
5
SAS还规定,每个语句的后面都要用符号“;”作为这个语 句结束的标志. 在编辑SAS程式时,一个语句可以写成多行,多个语句 也可以写成一行,可以从一行的开头写起,也可以从一行 的任一位置写起.每一行输入完成后,用enter键可以使光 标移到下一行的开头处.
1.4 SAS程式的输入及运行
----------------------SEA=m------------------N Obs Variable N Minimum Maximum Mean Std Dev 2 H 2 169.2 172.4 170.8 2.26 W 2 61.5 64.5 63.0 2.12 --------------------------------------------在程式中,cards;与“;”之间是数据, 第一列是变量no$的数据,表示学生的号码; 第二列是变量sex$的数据,表示性别; 第三列是变量age的数据,表示年龄; 第四列是变量h的数据,表示身高; 第五列是变量w的数据,表示体重。
2011/10/14 8
3 print; error 180-322: Statement is not valid or it is used out of proper order. 3 run; error 180-322:Statement is not valid or it is used out of proper order. 在日志中记录了一个错误,那就是在proc与print 之间不应该有“;”这个符号。将它去掉以后,请再注意 日志窗口中的信息并阅读输出窗口中输出的结果.
2011/10/14
18
2.4 infile语句
INFILE 语句的作用是指明外部数据文件的名称, 并从这个外部数据文件中读取数据。 INFILE语句的格式为: INFILE INFILE ‘外部数据文件名’; 例如,在D盘上有一个名称为xiao.txt的数据文件, 其中数据排列为: A 3.16 B 2.9 B 5.8 B 3 A 4.9 A 4.17 用INFILE 语句读取数据的程式为: data ex; infile 'D:xiao.txt'; input z$ x@@; proc print;run; 2011/10/14
7
在程式中,data后面的ex是给数据集所取的名字(还可以 用其他名字). 在这个数据集内将储存变量a、b、c、x、y、z 及它们所取的值,proc后面的print是要打印6个变量 所取的值. !将程式提交运行后,注意日志窗口中的信息。 NOTE: The data set WORK.EX has 1 observations and 6 variables. NOTE: The DATA statement used 0.71 seconds. 3 proc; error 10-205: Expecting the name of the procedure to be executed.
2011/10/14 10
在程式中,input定义与数据相对应的变量名、 顺序及类型,其中no$与sex $是非数字型的串变量, cards数据行开始的标志,数据行下面的“;” 独占一行是数据行结束的标志,sort是将SAS 数据集中的观测值按一个或多个变量进行排序, 后面的by sex是要根据sex的值对上述观测值进行 分组处理,而means则是要在分组处理后按var的要 求给出变量h和w的简单的描述性统计分析结果, 如下图所示。 ----------------------SEA=f---------------------N Obs Variable N Minimum Maximum Mean Std Dev 3 H 3 156.3 160.1 158.2 1.90 W 3 47.1 53.6 49.6 3.52 2011/10/14 11
相关文档
最新文档