第21章 SAS过程步操作基础

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

proc语句



每一个过程步都以proc语句开始; proc语句以proc关键字开始,紧跟其后的是所 调用SAS过程的名称,语句中还可包括众多的 控制选项; 多数SAS过程的proc语句中均包括“data=”选 项,用以指定该SAS过程所要处理的数据集; 不同的SAS过程,其proc语句中所包含的语句 选项也各不相同。
contents过程




contents过程用于显示指定的SAS数据集的有关信息 或者相应逻辑库中所包含成员的列表信息。 对于指定的SAS数据集,contents过程将列出数据集 的各种属性信息,以及所包含的全部变量及其属性。 有关变量信息的列表将按照字母顺序排列,变量属性 信息包括变量类型、长度、标签以及格式等。 contents过程的一般形式如下: proc contents data=SAS-data-set options; run;
proc print data=test label obs='number of observation';
by j; sum t;
sumby j;
var t x y; run;
means过程




means过程主要执行数据汇总的功能,与 univariate过程有众多相似之处; 可对全部观测或在指定的分组内对指定(或默 认)的变量计算各种指定(或默认)的描述性 统计量; means过程还可对样本的分布位置(对应于均 数为零的无效假设)执行t检验的功能; means过程还可创建有关描述性统计量的输出 数据集。
proc contents语句的主要选项





detials|nodetials :用于控制显示结果的详尽程度。 前者将显示上述的全部内容,后者则仅显示有关变量 信息的部分。默认设置:detials。 varnum :要求将变量按照其在数据集中的排列顺序 而非字母顺序显示。 short :有关变量信息部分仅显示变量名称,不显示 变量属性。 out= :将输入数据集中有关变量的信息存储到指定的 数据集中。 noprint :禁止程序运行结果在output窗口的输出显示。
字符排列顺序
字符型变量: blank ! “ # $ % & „ ( ) * + , - / 0 1 2 3 4 5 6 7 8 9:;<=>?@ABCDEFGHIJKLMN OPQRSTUVWXYZ[\]^_`abcdef ghIghIjklmnopqrstuvwxyz{|}~ 数值型变量: 缺失值 (._ . .A to .Z) 数值 ( 依照大小顺序 )
SAS过程步操作基础
有关过程步程序的基本概念
过程步(proc step)的概念




过程步是指用以调用某个SAS过程(SAS procedure) 的一组SAS语句所构成的相对独立的程序单元。 过程步均以SAS系统中包含的各类过程(procedure) 为基础,其中所能包含的语句和语句中的选项均表现 为相对固定的形式,取决于所调用的具体过程。 用户所能调用的SAS过程取决于安装SAS时所包含的 模块。 不同的SAS模块包含着执行相应功能的一个或多个 SAS过程。
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)=sx xy; run;
分布位置假设检验之t统计 量(对应的零假设为 “M=0”)
上述t统计量对应的双侧检 验概率值 第一四分位数 第三四分位数
means过程可用的其它语句




by 语句:按照by变量的取值分割数据集,每个子集分别 进行分析。 class 语句:指定用于分组的变量,可指定一个或多个。 freq 语句:指定用以作为观测频数(重复次数)的变量, 该变量的取值表示当前观测被扩增的倍数。 output 语句:将分析所得的各类统计量存储到指定的输出 数据集中。 var 语句:指定所要分析的变量。 weight 语句:指定作为权重的变量,进行各种加权统计量 的计算。
print过程支持的其它语句





by语句:分区显示各by分组(使用by语句需首先对 输入数据集按照by变量进行排序)。 id语句:指定一个或多个用以标识观测的变量,替 代观测编号的作用。 sum语句:指定一个或多个数值型变量,输出结果 中将显示其合计值。 sumby语句:指定一个by变量,以此by变量对数据 集的不同分组中,分别进行sum变量的合计值计算 与显示。 var语句:指定所要输出显示的变量。 Where语句:筛选所要显示的观测。
sort过程



sort过程用于对SAS数据集的观测按照一个或 多个变量的观测值进行排序,排序后的数据可 存为新的数据集,也可直接替换原有数据集。 sort过程可根据一个或多个变量进行排序操作, 升序或降序可由用户自定义。 在windows和unix系统中,sort过程的排序操 作依照ASCII码的排列顺序为准。
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;
means过程可计算的统计量(一)
关键字
N NMISS MEAN STD STDERR VAR MEDIAN CV
所代表的含义
有效数据记录数 缺失数据记录数 均数 标准差 标准误 方差 中位数 变异系数
关键字
MAX MIN RANGE SUM SUMWGT CSS USS CLM
所代表的含义
最大值 最小值 全距 总计 加权总计 校正的离均差平方和 未校正的离均差平方和 可信限(上、下界值)

Hale Waihona Puke Baidu
sort过程的形式和语句选项
sort过程一般形式: proc sort data=SAS-data-set options; by var1 <var2> <...>; run; proc sort语句的几个重要选项: (1)nodupkey:查找在by变量上(观测值)的重复观测并将其从数 据集中剔除。 (2)noduprecs:查找重复的观测(两行上所有的变量取值相同)并 剔除之。 (3)out=:指定一个输出数据集的名称,用以存储排序后的数据, 否则原有数据将被替换。 by语句中的升序降序设置:默认情况下by语句中指定的变量将以 升序的方式排列观测,如需将其改变为降序排列,在相应变量名 前设定descending选项。
报表输出过程
CALENDAR CHART FORMS FREQ
MEANS PLOT PRINT REPORT
SQL SUMMARY TABULATE TIMEPLOT
统计计算过程
CHART CORR FREQ MEANS
RANK REPORT SQL STANDARD
SUMMARY TABULATE UNIVARIATE
实用工具类过程
APPEND BMDP CATALOG
COPY CPORT CV2VIEW
FORMAT FSLIST IMPORT
PDSCOPY PMENU PRINTTO
SORT SOURCE SQL
CIMPORT
COMPARE CONTENTS
DATASETS
DOCUMENT EXPLODE
OPTIONS
proc print语句的主要选项




label :使用变量标签作为列标题,否则变量 名称将被用作列标题显示。 n<=string> :在输出结果的末尾显示观测总数, 如果同时设置“=string”项,“string”将同观测 总数一同显示。 noobs :禁止显示观测编号列。 obs= :为观测编号列指定作为列标题的标签。
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; other statements; run;
OPTLOAD OPTSAVE
PRTDEF
PRTEXP REGISTRY
TAPECOPY
TAPELABEL TEMPLATE
CONVERT
EXPORT
PDS
RELEASE
TRANSPOSE
BASE中若干常用的SAS过程



contents:显示SAS数据集的有关属性信息,帮助用户了 解自己的数据; print:将数据集中全部或指定的部分变量、以及全部或指 定的部分观测输出显示; means:针对数值型变量计算其各种描述性统计量; sort:根据一个或多个变量,对数据集的全部观测进行排 序。 import过程:从外部文件读取数据并创建SAS数据集; export过程:从SAS数据集读取数据并将其写入外部文件; printto过程:指定output窗口及log窗口的输出路径。
means过程可计算的统计量(二)
关键字 LCLM UCLM SKEW KURT T PROBT Q1 Q3 所代表的含义 可信限下侧界值 可信限上侧界值 偏度 峰度 关键字 QRANGE P1 P5 P10 P90 P95 P99 所代表的含义 四分位数间距 第一百分位数 第五百分位数 第十百分位数 第九十百分位数 第九十五百分位数 第九十九百分位数
proc means语句的主要选项



missing:将class变量的缺失值作为合法的水平用以 创建代表分组的组合; fw=:指定输出结果中显示有关统计量的列的宽度; maxdec=:指定一个0~8的整数,用以设置输出结果 中有关统计量的最大小数位数; noprint:禁止在结果窗口显示任何分析结果; alpha=:指定均数可信区间的置信水平,默认值为 0.05。
过程步程序的一般结构

以proc语句开始、run语句结束; 过程步程序包含以下三方面的内容: (1)proc语句,其中包含proc关键字、所要使用的 过程名以及所要处理的数据集等; (2)其它用于定义分析操作内容的语句,如class 语句、var语句、tables语句等; (3)run语句,用于标志当前过程步程序的结束。 如果此过程步后紧随其它过程步或数据步,run语句 可省略。
means过程的一般形式

means过程的一般形式: proc means data=SAS-data-set statistic_keywords options; other statements; run;

proc means语句中除包含众多的选项外,还可包含各 种统计量关键字(“statistic_keywords”项),用来 指定means过程所要计算的统计量。
BASE模块SAS过程的功能与操作
BASE模块所含过程的功能分类




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