SAS过程步操作基础.ppt

上传人:w****2 文档编号:16566512 上传时间:2020-10-13 格式:PPT 页数:46 大小:631KB
收藏 版权申诉 举报 下载
SAS过程步操作基础.ppt_第1页
第1页 / 共46页
SAS过程步操作基础.ppt_第2页
第2页 / 共46页
SAS过程步操作基础.ppt_第3页
第3页 / 共46页
资源描述:

《SAS过程步操作基础.ppt》由会员分享,可在线阅读,更多相关《SAS过程步操作基础.ppt(46页珍藏版)》请在装配图网上搜索。

1、SAS过程步操作基础 有关过程步程序的基本概念 过程步( proc step)的概念 过程步是指用以调用某个 SAS过程( SAS procedure) 的一组 SAS语句所构成的相对独立的程序单元。 过程步均以 SAS系统中包含的各类过程( procedure) 为基础,其中所能包含的语句和语句中的选项均表现 为相对固定的形式,取决于所调用的具体过程。 用户所能调用的 SAS过程取决于安装 SAS时所包含的 模块。 不同的 SAS模块包含着执行相应功能的一个或多个 SAS过程。 过程步程序的一般结构 以 proc语句开始、 run语句结束; 过程步程序包含以下三方面的内容: ( 1) pro

2、c语句,其中包含 proc关键字、所要使用的 过程名以及所要处理的数据集等; ( 2)其它用于定义分析操作内容的语句,如 class 语句、 var语句、 tables语句等; ( 3) run语句,用于标志当前过程步程序的结束。 如果此过程步后紧随其它过程步或数据步, run语句 可省略。 proc语句 每一个过程步都以 proc语句开始; proc语句以 proc关键字开始,紧跟其后的是所 调用 SAS过程的名称,语句中还可包括众多的 控制选项; 多数 SAS过程的 proc语句中均包括“ data=”选 项,用以指定该 SAS过程所要处理的数据集; 不同的 SAS过程,其 proc语句中

3、所包含的语句 选项也各不相同。 BASE模块 SAS过程的功能与操作 BASE模块所含过程的功能分类 报表输出过程:用以显示各种实用信息,包括数据列表、 汇总报告、日历、书信、标签、表单以及各种图形报表等。 统计计算过程:用以计算各种基本统计量,包括均数、标 准差等基于矩的统计量,分位数,可信区间,频数等;还 可编制交叉表、进行相关分析以及针对各种分布形式的假 设检验;此外还可对数据进行编秩及标准化等操作。 实用工具类过程:此类过程为用户提供各类实用工具,可 实现的功能包括对数据集的创建、编辑、排序以及转置等 操作,创建和恢复数据交换文件,创建用户自定义的格式, 维护 SAS文件等。 某些 S

4、AS过程同时兼备上述分类的两项以上功能,如 means过程、 freq过程等既具有统计计算功能,又具有报 表输出功能。 报表输出过程 CALENDAR MEANS SQL CHART PLOT SUMMARY FORMS PRINT TABULATE FREQ REPORT TIMEPLOT 统计计算过程 CHART RANK SUMMARY CORR REPORT TABULATE FREQ SQL UNIVARIATE MEANS STANDARD 实用工具类过程 APPEND COPY FORMAT PDSCOPY SORT BMDP CPORT FSLIST PMENU SOURCE

5、CATALOG CV2VIEW IMPORT PRINTTO SQL CIMPORT DATASETS OPTIONS PRTDEF TAPECOPY COMPARE DOCUMENT OPTLOAD PRTEXP TAPELABEL CONTENTS EXPLODE OPTSAVE REGISTRY TEMPLATE CONVERT EXPORT PDS RELEASE TRANSPOSE BASE中若干常用的 SAS过程 contents:显示 SAS数据集的有关属性信息,帮助用户了 解自己的数据; print:将数据集中全部或指定的部分变量、以及全部或指 定的部分观测输出显示; mean

6、s:针对数值型变量计算其各种描述性统计量; sort:根据一个或多个变量,对数据集的全部观测进行排 序。 import过程:从外部文件读取数据并创建 SAS数据集; export过程:从 SAS数据集读取数据并将其写入外部文件; printto过程:指定 output窗口及 log窗口的输出路径。 contents过程 contents过程用于显示指定的 SAS数据集的有关信息 或者相应逻辑库中所包含成员的列表信息。 对于指定的 SAS数据集, contents过程将列出数据集 的各种属性信息,以及所包含的全部变量及其属性。 有关变量信息的列表将按照字母顺序排列,变量属性 信息包括变量类型、长

7、度、标签以及格式等。 contents过程的一般形式如下: proc contents data=SAS-data-set options; run; proc contents语句的主要选项 detials|nodetials :用于控制显示结果的详尽程度。 前者将显示上述的全部内容,后者则仅显示有关变量 信息的部分。默认设置: detials。 varnum :要求将变量按照其在数据集中的排列顺序 而非字母顺序显示。 short :有关变量信息部分仅显示变量名称,不显示 变量属性。 out= :将输入数据集中有关变量的信息存储到指定的 数据集中。 noprint :禁止程序运行结果在 ou

8、tput窗口的输出显示。 contents过程示例 proc contents data=sashelp.class varnum; run; proc contents data=sashelp.class nodetails; run; print过程 print过程用于将数据集中的全部或特定内容输出显示。 可通过特定语句实现对选定列(变量)和特定行(观 测)的输出显示。 print过程功能特性:自动格式化,以变量名称或标签 为列标题,选择性输出,特定的 by格式以及 id格式。 print过程的一般形式: proc print data=SAS-data-set options; oth

9、er statements; run; proc print语句的主要选项 label :使用变量标签作为列标题,否则变量 名称将被用作列标题显示。 n :在输出结果的末尾显示观测总数, 如果同时设置“ =string”项,“ string”将同观测 总数一同显示。 noobs :禁止显示观测编号列。 obs= :为观测编号列指定作为列标题的标签。 print过程支持的其它语句 by语句:分区显示各 by分组(使用 by语句需首先对 输入数据集按照 by变量进行排序)。 id语句:指定一个或多个用以标识观测的变量,替 代观测编号的作用。 sum语句:指定一个或多个数值型变量,输出结果 中将显示

10、其合计值。 sumby语句:指定一个 by变量,以此 by变量对数据 集的不同分组中,分别进行 sum变量的合计值计算 与显示。 var语句:指定所要输出显示的变量。 Where语句:筛选所要显示的观测。 print过程示例 data test; do i=1 to 20; do j=1 to 5; x=i*j/2; y=i*2*j; t=sqrt(i*j); output; end; end; label x=one y=tow t=three; run; proc sort data=test; by j; run; proc print data=test label obs=numbe

11、r of observation; by j; sum t; sumby j; var t x y; run; means过程 means过程主要执行数据汇总的功能,与 univariate过程有众多相似之处; 可对全部观测或在指定的分组内对指定(或默 认)的变量计算各种指定(或默认)的描述性 统计量; means过程还可对样本的分布位置(对应于均 数为零的无效假设)执行 t检验的功能; means过程还可创建有关描述性统计量的输出 数据集。 means过程的一般形式 means过程的一般形式: proc means data=SAS-data-set statistic_keywords o

12、ptions; other statements; run; proc means语句中除包含众多的选项外,还可包含各 种统计量关键字(“ statistic_keywords”项),用来 指定 means过程所要计算的统计量。 proc means语句的主要选项 missing:将 class变量的缺失值作为合法的水平用以 创建代表分组的组合; fw=:指定输出结果中显示有关统计量的列的宽度; maxdec=:指定一个 08的整数,用以设置输出结果 中有关统计量的最大小数位数; noprint:禁止在结果窗口显示任何分析结果; alpha=:指定均数可信区间的置信水平,默认值为 0.05。

13、means过程可计算的统计量(一) 关键字 所代表的含义 关键字 所代表的含义 N 有效数据记录数 MAX 最大值 NMISS 缺失数据记录数 MIN 最小值 MEAN 均数 RANGE 全距 STD 标准差 SUM 总计 STDERR 标准误 SUMWGT 加权总计 VAR 方差 CSS 校正的离均差平方和 MEDIAN 中位数 USS 未校正的离均差平方和 CV 变异系数 CLM 可信限(上、下界值) means过程可计算的统计量(二) 关键字 所代表的含义 关键字 所代表的含义 LCLM 可信限下侧界值 QRANGE 四分位数间距 UCLM 可信限上侧界值 P1 第一百分位数 SKEW

14、偏度 P5 第五百分位数 KURT 峰度 P10 第十百分位数 T 分布位置假设检验之 t统计 量(对应的零假设为 “ M=0”) P90 第九十百分位数 PROBT 上述 t统计量对应的双侧检验概率值 P95 第九十五百分位数 Q1 第一四分位数 P99 第九十九百分位数 Q3 第三四分位数 means过程可用的其它语句 by 语句:按照 by变量的取值分割数据集,每个子集分别 进行分析。 class 语句:指定用于分组的变量,可指定一个或多个。 freq 语句:指定用以作为观测频数(重复次数)的变量, 该变量的取值表示当前观测被扩增的倍数。 output 语句:将分析所得的各类统计量存储到

15、指定的输出 数据集中。 var 语句:指定所要分析的变量。 weight 语句:指定作为权重的变量,进行各种加权统计量 的计算。 means过程示例 data test; do i=1 to 3; do j=1 to 2; do k=1 to 30; x=abs(ranuni(0)*10+8; y=x*1.5; output; end; end; end; run; proc means data=test mean median std var cv t probt; class i j; var x y; output out=outdata mean(x y)=mx my std(x y

16、)=sx xy; run; sort过程 sort过程用于对 SAS数据集的观测按照一个或 多个变量的观测值进行排序,排序后的数据可 存为新的数据集,也可直接替换原有数据集。 sort过程可根据一个或多个变量进行排序操作, 升序或降序可由用户自定义。 在 windows和 unix系统中, sort过程的排序操 作依照 ASCII码的排列顺序为准。 字符排列顺序 字符型变量: blank ! “ # $ % ? A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ a b c d e f g h I g h I j k l m n o p

17、q r s t u v w x y z | 数值型变量: 缺失值 (._ . .A to .Z) 数值 ( 依照大小顺序 ) sort过程的形式和语句选项 sort过程一般形式: proc sort data=SAS-data-set options; by var1 ; run; proc sort语句的几个重要选项: ( 1) nodupkey:查找在 by变量上(观测值)的重复观测并将其从数 据集中剔除。 ( 2) noduprecs:查找重复的观测(两行上所有的变量取值相同)并 剔除之。 ( 3) out=:指定一个输出数据集的名称,用以存储排序后的数据, 否则原有数据将被替换。 by

18、语句中的升序降序设置:默认情况下 by语句中指定的变量将以 升序的方式排列观测,如需将其改变为降序排列,在相应变量名 前设定 descending选项。 sort过程示例 data test; input sn x y; datalines; 2 61 90 1 30 25 5 55 62 3 23 21 4 32 38 3 39 16 ; run; proc sort data=test out=testn nodupkey; by sn; run; proc print data=testn; run; import过程 import过程用于从外部数据文件中读取数据, 创建 SAS数据集。

19、 import过程可读入诸多类型的外部数据文件来 创建新的 SAS数据集,其中包括微软的 access 数据库、 excel工作表, lotus的数据文件,以 及各种分隔符(空格、逗号等)分隔的数据文 件(文本文件等)。 import过程的形式和语句 import过程的形式: proc import options; data source statements; run; proc import语句的重要选项: datafile=:用以指定外部数据文件的物理路径; table=:用以指定数据库文件中所要读入的数据表(此选项与 datafile=选项不可同时使用); out=:用以指定所要创建

20、的数据集名称; replace:如果所要创建的数据集已存在,设置此选项将会以新数据 集覆盖已有的数据集; dbms=:用以指定所读入外部数据的格式。 windows环境下 import 过程可读入的外部数据格式见下页。 windows环境下可用的外部数据格式 Identifier Input Data Source Extension ACCESS Microsoft Access 2000 or 2002 table .mdb ACCESS97 Microsoft Access 97 table .mdb ACCESS2000 Microsoft Access 2000 table .mdb

21、 ACCESS2002 Microsoft Access 2002 table .mdb CSV delimited file (comma-separated values) .csv DBF dBASE 5.0, IV, III+, and III files .dbf DLM delimited file (default delimiter is a blank) .* EXCEL Excel 2000 or 2002 spreadsheet .xls EXCEL4 Excel 4.0 spreadsheet .xls EXCEL5 Excel 5.0 or 7.0 (95) spre

22、adsheet .xls EXCEL97 Excel 97 or 7.0 (95) spreadsheet .xls EXCEL2000 Excel 2000 spreadsheet .xls JMP JMP table .jmp TAB delimited file (tab-delimited values) .txt WK1 Lotus 1-2-3 Release 2 spreadsheet .wk1 WK3 Lotus 1-2-3 Release 3 spreadsheet .wk3 WK4 Lotus 1-2-3 Release 4 or 5 spreadsheet .wk4 imp

23、ort过程的数据源语句 数据源语句( data source statements)为 import过程读入外部数据时提供更为细致和具 体的控制信息。 不同的外部数据格式对应不同类型的数据源语 句。 工作表及 PC文件对应的数据源语句 Data Source Supported Syntax Valid Values Default Value CSV/TAB GETNAMES= DATAROW= GUESSING ROWS= YES | NO 1 to 32767 1 to 32767 YES 2 None DLM GETNAMES= DATAROW= GUESSINGROWS= YES |

24、 NO 1 to 32767 1 to 32767 YES 2 None DBF GETDELETED= YES | NO NO WK1 / WK3 / WK4 GETNAMES= RANGE= SHEET= YES | NO Range Name or Absolute Range Value, such as A1.C4 Sheet Name YES EXCEL EXCEL97 EXCEL2000 EXCEL2002 GETNAMES= RANGE= SHEET= MIXED= SCANTEXT= SCANTIME= USEDATE= TEXTSIZE= DBSASLABEL= YES |

25、 NO Range Name or Absolute Range Value, such as A1.C4 Sheet Name YES | NO YES | NO YES | NO YES | NO 1 to 32767 COMPAT | NONE YES NO YES YES YES 1024 COMPAT 数据库表对应的数据源语句 ACCESS ACCESS97 ACCESS2000 ACCESS2002 DATABASE= DBPWD= UID= PWD= WGDB= SCANMEMO= SCANTIME= USEDATE= MEMOSIZE= DBSASLABEL= The comp

26、lete path and filename for the MS ACCESS database file. Database password User ID User password The complete path and filename for the Workgroup Administration file. YES | NO YES | NO YES | NO 1 to 32767 COMPAT | NONE YES YES NO 1024 COMPAT import过程示例 proc import datafile=d:officeseminarsas_basecase

27、sstroke1.xls out=stroke1 dbms=excel2002 replace; sheet=stroke1; getnames=yes; run; export过程 export过程执行与 import过程完全相反的功能,从 SAS数据集读取数据写入指定的外部数据文件(新 建)。 可写入的外部数据文件格式与 import过程可读入的数 据文件格式完全相同。 export过程一般形式: proc export options; data source statements; run; proc export语句中的选项与 import过程的相应选项相 对应; export过程所

28、含的数据源语句多数也与 import过程相 同或相近。 proc export语句选项 data=:指定要读取的 SAS数据集,对应于 import过程的 out=; outfile=:指定要写入的外部数据文件,对应 于 import过程的 datafile=; outtable=:指定要写入的数据库表,对应于 import过程的 table=; dbms=:同 import过程的相应选项; replace:同 import过程的相应选项。 export过程示例 proc export data=stroke1 outfile=d:officeseminarsas_basecasesstrok

29、e1n.xls dbms=excel2002 replace; sheet=data; run; printto过程 printto过程用于指定 SAS程序运行结果以及 log窗口内 容的显示或存储位置。 默认状态下, SAS程序运行结果显示在 output窗口中, log窗口的提示信息显示在 log窗口中。 printto过程允许用户将上述的两项内容保存到外部文 件中或者 SAS的目录条目( catalog entry)中。 printto过程的一般形式: proc printto options; run; proc printto语句选项 log=:指定 log窗口内容的显示或存储位置。

30、指定为外 部文件时, log窗口内容将被存储到此文件中, log窗 口本身不再显示任何内容。设置为 log=log时恢复默认 显示方式。 print=:指定 output窗口内容的显示或存储位置。指定 为外部文件时, output窗口内容将被存储到此文件中, output窗口本身不再显示任何内容。设置为 print=print 时恢复默认显示方式。 new:如果 log或 output窗口内容目标文件已存在,则 清空其中所含的原有内容,仅保存此次新加入的内容; 未指定此选项时新内容将被追加到原有内容之后。 printto过程示例 proc printto log=d:logfile.txt p

31、rint=d:outputfile.txt new; run; proc printto log=log print=print; run; 练习 1 读入文本文件“ data2.txt”,创建数据集 data2。 数据说明:数据共 5列,前两列为分组因素,取值为 1或 0,变量名取 factor1和 factor2,后三列为数值变 量,变量名取 x1-x3。 目的:按照 factor1分层(分割数据集),在每一层 内,按照 factor2分组,求每一组内变量 x1,x2,x3的 均数及其 95%可信区间、标准差、中位数、四分位 数间距、最大值和最小值。创建一个输出数据集, 将 x1、 x2、

32、 x3的均数及其 95%可信区间保存到该数 据集中,输出显示该数据集,观察其中的内容。 要求:使用 means过程,其中使用 by语句进行数据 分层。 练习 2 针对练习 1创建的数据集 data2,在各层各组内 对变量 x1-x3进行样本均数与已知总体均数 ( x1,x2,x3分别对应 5, 8, 12)的比较。 要求:使用 means过程,用 t检验和可信区间 法两种方法完成,并比较所得结果是否一致。 提示: t检验法需要对数据进行适当的变量变 换,编制相应的 DATA步程序实现此变换过程。 练习 3 使用 import过程从 4个 excel文件“ stroke1.xls”、 “ str

33、oke2.xls”、 “ stroke3.xls”、 “ stroke4.xls”中读 取数据创建数据集 stroke1、 stroke2、 stroke3、 stroke4,以 subject为匹配依据,将 4个数据集横向拼 接为一个数据集。 使用 export过程将拼接所得的一个完整数据集输出到 excel文件“ stroke.xls”中,并将相应的工作表命名为 “ stroke_data”。 注意: 4个数据集中除变量 subject外,其它 4个名称相 同的变量 UE、 HW、 LE、 Bart分别代表 4个时间点上 4 个指标的测量值,因此不可在拼接数据集时相互覆盖, 需在拼接之前分别更换为不同的变量名称。 练习 4 使用 printto过程,将 log窗口内容和 output窗口 内容输出到某个文本文件(不同的文件或相同 的一个文件)中,重复练习 1和练习 2的操作, 浏览输出的结果文件的内容。 将 log窗口和 output窗口的显示设置恢复为默认 状态。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!