SAS BASE培训ppt课件_第1页
SAS BASE培训ppt课件_第2页
SAS BASE培训ppt课件_第3页
SAS BASE培训ppt课件_第4页
SAS BASE培训ppt课件_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SASBASE BY PAean won Page 2 目录 第十章 SAS综合运用举例 Page 3 第一章 SAS系统初识 Page 4 SAS系统诞生 全称为StatisticsAnalysisSystem 最早由北卡罗来纳大学的两位生物统计学研究生编制1972研制出第一版 1976年成立了SAS软件研究所 正式推出了SAS软件 现在是9 2版是用于数据分析与决策支持的大型集成信息系统 统计分析功能是它的重要组成部分和核心功能国际上的标准软件系统 Page 5 BASESAS模块SAS STAT 统计分析模块SAS ETS 经济计量学和时间序列分析模块SAS OR 运筹学模块SAS QC 质量控制模块SAS IML 交互式矩阵程序设计语言模块SAS GRAPH 绘图模块SAS FSP 快速数据交互式菜单系统模块SAS AF 交互式应用开发模块SAS ASSIT 菜单驱动界面模块SAS ACCESS 访问外部数据模块SAS EIS 企业信息系统模块SAS INSIGHT 可视化探索工具模块SAS CALC 电子表格模块SAS CONNECT 分布式数据处理模块SAS WA 企业级数据仓库管理模块SAS EM 企业级数据挖掘模块 SAS功能模块 Page 6 SAS工作界面 重要功能键 F1 F5 F6 F7 F9 CTL E SAS工作界面 Page 7 SAS两类菜单栏 菜单栏的下拉菜单操作 点菜单栏中的按钮 弹出菜单操作 相应窗口点鼠标右键 Page 8 SAS工具栏 资源管理器窗口工具栏 编辑器窗口工具栏 Page 9 SAS命令 在命令行中输入SAS命令可以快速完成一些SAS任务 Page 10 SAS主要功能窗口 以 只显示内容 视图显示的 SAS资源管理器 窗口 没有树视图 结果 窗口程序编辑器 增强型编辑器 日志 窗口 输出 窗口 SAS资源管理器 窗口 Page 11 SAS资源管理器窗口 SAS资源管理器窗口下 可以执行基本的SAS任务 1 创建新的逻辑库和文件快捷方式 2 创建新的逻辑库成员和目录条目 3 打开和编辑SAS文件 根据操作环境 可以使用以下方法打开 SAS资源管理器 窗口 打开树视图和列表视图 1 菜单 查看 SAS资源管理器2 命令 EXPLORER3 工具栏 SAS资源管理器 Page 12 SAS结果窗口 可以通过结果窗口对程序的输出结果进行浏览和管理 1 SAS可以用一种或多种格式 或类型 产生输出 2 默认类型是 列表 输出 如右图的 查询结果 3 其他输出类型包括HTML 输出数据集 和PostScript Page 13 SAS输出类型设置 要设置输出类型 可使用菜单栏 工具 选项 参数选择 结果 标签 进入参数选择窗口进行设置如下图所示 点选创建HTML时 输出结果同时展现在HTML文件中 Page 14 SAS增强型编辑器窗口 SAS9 1版本的默认编辑窗口为增强型 它比普通编辑窗口增加了如下功能 使用特定颜色对SAS程序 SCL程序以及HTML和XML文件的元素进行显示 同时进行相关语法检查 创建和格式化自定义的关键词 每个过程步 数据步或者宏的程序段都可以实现展开和收缩的功能 以便对SAS程序的宏观结构有更好的了解 通过定义缩写来快速输入一段文字 通过显示行号使得程序代码更具可读性 设定增强型编辑器的快捷功能键 同时打开一个文件的多个视图 将光标停留在语言元素上 按F1就可以直接进入到SAS帮助文档中该语言元素的说明部分 当然有时候该语言元素有多个主题 可以根据需要进行选择 Page 15 SAS日志窗口 日志 窗口用来查看程序运行信息 提交的程序语句 系统消息和错误 程序运行速度和时间 日志 窗口中的元素根据以下类型呈现不同的颜色 程序行黑色 以语句标号开始 提示蓝色 以NOTE开始 警告绿色 以WARNING开始 错误红色 以ERROR开始 Page 16 SAS输出窗口 按F8提交程序 SAS界面如下所示 输出窗口用来查看SAS程序的输出结果 Page 17 SAS新建逻辑库 1 在逻辑库级别 在空白处按右键 选择新建 出现如下界面 2 在名称中输入新的逻辑库名称 3 在引擎中根据数据来源选择不同的引擎 如果只是想建立本机地址上的一个普通的SAS数据集数据库 可以选择默认 4 然后点选启动时启用 在逻辑库信息中 点选路径后面的浏览按钮 选择与这个逻辑库相对应的物理地址 选项窗口可以不填 点击确定产生一个新的逻辑库 Page 18 SAS程序编辑窗口操作 提交程序可以用增强型编辑器编写程序 也可以将用其它文本编写的程序拷贝到编辑器 程序完成后 直接按F3或者F8提交程序 或点选工具条中的提交按钮 或者在命令框中输入Submit命令 储存程序程序可以保存为其它格式的文本 也可以直接以编辑器的方式来储存 直接点选文件 保存 选择路径就可以保存这些程序 Page 19 SAS数据集导入和导出 第一步 点选文件 导出数据 出现如下界面 要求输入要导出文件的逻辑库名称和数据文件名称 比如要导出sashelp逻辑库的class数据文件 通过下拉菜单选择逻辑库和数据文件 Page 20 SAS数据集导入和导出 第二步 点选next 进入到选择输出格式界面 通过下拉菜单选择给定的格式 MicrosoftExcel97 2000or2002workbook 然后点选next Page 21 SAS数据集导入和导出 第三步 进入到设定输出文件位置和名称界面 通过浏览按钮选择输出位置 并键入输出文件的名称 如E test xls Page 22 SAS数据集导入和导出 第四步 点选ok 进入到SASExportWizard画面 SASExportWizard和后面要介绍的ImportWizard是SAS转换数据文件的工具 在这个画面中 ExportWizard要求对这个输出过程的table命名 这时可以直接选finish完成输出 或者命名为 1 Page 23 SAS数据集导入和导出 第五步 如果上一步选择命名 SAS会建立一段与上述窗口操作相同的程序 并提示是否要保存这段程序 SAS对数据的管理 1 SAS对数据的分析与呈现都是面对SAS数据集进行2 SAS数据集是一种SAS文件3 SAS文件是由SAS系统创建和管理的有特殊结构的文件 Page 25 SAS对外部数据的管理 数据直接输入 流行的数据库 其它文件格式 SAS数据集 SAS应用程序 数据分析过程中用得较少 数据挖掘过程中用得较多 常用的数据分析获取外部数据 TXTEXCELCSVSPSS ACCESS DB2 ORACLE Page 26 SAS逻辑库 26 SAS逻辑库由一组SAS文件组成 SAS软件系统的信息组织有两层 第一层是SAS逻辑库 第二层是SAS文件 SAS逻辑库是一个逻辑概念 本身不是物理实体 它对应的实体是操作系统下一个文件夹或几个文件夹中的一组SAS文件 SAS逻辑库文件用两级命名方式定名 libname SAS filename 库标记 文件名 SAS数据集 SAS数据库 SAS逻辑库有永久库和临时库两种临时库 名为WORK 系统自动指定永久库 系统自动指定名为SASUSER SASHELP等 其它可由用户指定 Page 27 SAS创建逻辑库 逻辑库名是SAS名 长度不能超过8个字节 如SAS逻辑库 ResDat SASHELP等 建立SAS逻辑库的方法 用菜单操作 用LIBNAME语句 语句格式 LIBNAMElibref SAS data library 语法说明 Libref逻辑库名SAS data library逻辑库对应的物理地址Engine引擎名称 缺失时为默认引擎 例1用LIBNAME语句创建SAS逻辑库 libnamezkxr C DocumentsandSettings user 桌面 中科信软SAS培训 逻辑库 a 例2引用非临时库的SAS文件时必须使用两级命名方式 而引用临时库的SAS文件时 可以直接使用文件名 效果等同于work 文件名 datazkxr a setd v run Page 28 SAS语句 SAS语句就是一系列关键词 SAS名称 算符以及特殊字符的组合 所有的SAS语句以分号结尾 SAS语句一般分为数据步语句与过程步语句 以及可以用在SAS程序任何地方的全局通用语句 KEYWORDparameter options 关键词参数 选项 其中 粗体 必须按显示形式书写的关键词 白正体 用户提供的信息 括号内的信息可选 任选 参数PARAMETER不是任选项 不用括号 OPTIONS是选项关键词 Page 29 SAS语名举例 例2 5有效的SAS语句 datadata1 data为关键词 data1为SAS名 data null null 为SAS名 putname 8 put为关键词 name为SAS名 8 为输出格式 formatdateyymmdd10 procmeansdata ResDat class proc为关键词 means为过程名 infile d ResDat class txt doI 1to100 x y 1 sumx x run Page 30 SASoptions选项 系统选项用来控制SAS的运行方式 如SAS系统启动 硬件软件的连接 SAS程序的运行等 语句格式 OPTIONSoption s option设定一个或多个系统选项 任何系统选项都有一个默认设置 例 设定选项OPTIONSobs 5 取数据集前五个观测 Dataone SetResDat class Run Page 31 SAS表达式 表达式由一系列操作符和操作对象构成 产生一个目标值 使用表达式可以对变量作变换和赋值 创建新变量 计算新数值以及控制条件语句的运行等 操作对象有 变量 常数 操作符包括 算术算符 比较算符 逻辑算符 SAS函数 括号 Page 32 SAS常数 SAS常数是SAS系统可以识别的一些固定值 1 数值常数 1 5 1 23 1 2E23 2E4 20000数值常数可以有多种格式展示 标准格式 1 01 1 1 1 1 科学计数法 1 1e11 1 2e 12 十六进制格式 1cx 12x 9x 2 引用带引号的字符常数 name TOM S name TOM S 例中 两语句等价 要注意的是 字符常数是由引号括起来的 但是字符变量的名称则没有引号 也就是说字符常数不能作为字符变量的名称 3 引用日期时间常数 1jan2000 d 01jan00 d 9 25 t 18jan00 9 27 25 dtifbegin 01JAN2000 dthenend 31DEC2000 d Page 33 SAS算符 SAS算符是一些符号 其作用是进行计算 比较等 算术算符应用 data X 3 5 2 5 putX Y 9 1 3 putY X Y 1 X putY Y也是缺失值 run 比较算符应用 ifx ythenc 5 elsec 12 比较算符经常出现在IF语句里 比较准则 数值和字符都可以比 结果为真赋值1 假赋值0 字符值从左到右逐个按ASCII码排列序列进行比较 缺失值参加比较时 它比任何有效值都小 Page 34 SAS算符 字符串连接符 包括 等data null a 中华 b 人民 c 共和国 x1 a b c x2 a b c x3 a b c putx1 putx2 putx3 run 输出结果 中华人民共和国中华人民共和国中华人民共和国 Page 35 可以看到这些连接符输出结果完全一致 只是单纯的连接 不会对空格进行特殊处理 但有时需要对空格进行处理 常用的字符连接函数包括以下几个 trim 去掉字符串尾部空格 如果字符串为空 则返回一个空格left 把字符串开头的空格移到尾部strip 去掉字符串开头和结尾的所有空格cat 与 作用类似 保留首尾全部空格catt 但是连接之前会去掉各字符串尾部空格 相当于连接符结合trim 使用cats 但是连接之前会去掉首尾全部空格 相当于连接符结合strip 使用catx 但是连接之前会去掉首尾全部空格 并且在字符串之间加上一个指定的字符串 SAS算符连接函数 Page 36 data null a 中华 b 人民 c 共和国 x1 trim a trim b trim c x2 left a left b left c x3 strip a strip b strip c x4 cat a b c x5 catt a b c x6 cats a b c x7 catx 我爱 a b c putx1 x2 x3 x4 x5 x6 x7 run SAS算符连接函数 x1 中华人民共和国x2 中华人民共和国x3 中华人民共和国x4 中华人民共和国x5 中华人民共和国x6 中华人民共和国x7 中华我爱人民我爱共和国 Page 37 SAS变量 SAS变量分为数值变量和字符变量 数值变量数值变量是SAS系统以浮点 floating point 方式存储的数据变量 数值变量包括日期和时间 数值变量的值只能是数值 字符变量字符变量可以由阿拉伯字母 数字0 9以及其它一些特殊字符组成 字符变量的值可以是字符 字母 特殊字符和数值 字符变量名后跟一个美元号 表示该变量是字符型而不是数值型 Page 38 SAS创建变量的方式 使用赋值语句Dataa x 1 run 数据集a中有个变量x 值为1 使用INPUT语句Datab Inputx Datalines AaaBbb Run 使用FORMAT或INFORMAT语句Datab Setb Informaty 9 Run 以类似的方式创建变量的还有LENGTH语句 ATTIRB语句 Page 39 SAS 输出格式format是SAS用来确定如何输出或写出数据值的指令 用FORMAT控制数据值在输出时所使用的格式 输入格式informat是SAS用来确定如何将数据读入变量的指令 如果在输入或输出数据集的过程中没有设定变量的输入和输出格式 系统会自动使用原数据集中的这个变量原有的输入输出格式 语句格式 format informat 格式说明 Page 40 SAS变量类型转换 A 字符型变量转换为数值型变量1 将字符型变量进行算术运算 2 INPUT 数据源 输入格式 B 数值型变量转换为字符型变量1 将数值型和字符型变量连接 2 使用函数如SUBSTR left right等 3 PUT 数据源 输出格式 dataa inputx6 y 8 cards 123454564423221211333111345 3 run A 字符型变量转为数值型变量 dataa seta z1 y 0 z2 input y 8 run B 数值型变量转为字符型变量 dataa seta m1 a x m2 left x m3 put x 8 run Page 41 SAS自动变量 datab seta keep numeric run datac seta keep character run 只保留数据集中的数值变量 只保留数据集中的字符变量 Page 42 SAS程序书写规则 SAS语句的书写规则灵活自由 语句可在行的任一列开始 一个语句可以分写为多行 多个语句可以写在同一行 语句中各项之间至少用一个空格或特殊字符隔开 应遵守的书写规则 不同程序步间留空行 每条语句都要另起行 比较规范的书写有助于阅读和检查 还可以减少书写错误 注释语句的两种格式 注释内容 注释内容 Page 43 第二章 SAS函数 Page 44 SAS函数定义 SAS函数是一个子程序 对自变量返回一个结果值 SAS函数的形式 函数名 X1 X2 函数用于组合表达式可以简化编程和统计计算 例 表达式中用函数 dataa keep dateydmin 保留date y d min四个变量 setResDat idx000001 y year date 函数year给出变量date年份 d weekday date 函数weekday给出变量date在一周内的哪一天 min min sum oppr hipr lopr clpr 1000 run Page 45 SAS 例用与不用SAS函数时的程序 在不用SAS函数的情况下 totx xl x2 x3 x4 x5 x6 x7 x8 x9 x10 iftotx ythenleast totx elseleast y 使用SAS函数 least min sum ofx1 x10 y 例中 两段程序的结果相同 第二段只有一个语句 非常简单 例 条件语句中使用函数 dataa setResDat idx000001 whereyear date 1996 Where语句中使用Year函数 run Page 46 SAS函数自变量 自变量类型 变量名 常数 函数 表达式 例函数及其自变量类型举例 Page 47 SAS函数自变量 自变量个数 有些函数不需要自变量 有些只需要一个自变量 有些函数有多个自变量 SAS9 1中 自变量个数不能超过32767 如果函数的自变量是表达式 在函数被调用之前 所有表达式自变量首先计算 自变量表示法 当函数有多个自变量时 必须用逗号分隔开 自变量名缩写方法 函数名 OF变量名1 变量名n Page 48 SAS函数自变量 例正确与错误的表示方法 例数组元素自变量的缩写方法 arrayy 10 y1 y10 定义数组y 10 x sum ofy z sum ofy1 y10 例中 两个SUM函数的表示法是等价的 Page 49 SAS函数结果 通常函数的结果由其自变量的属性决定 自变量是字符时结果变量为字符 自变量是数值时结果变量为数值 PUT函数是一个例外 它不管自变量是什么类型 其结果总是字符值 Page 50 SAS用PUT语句在LOG窗口显示函数值 例显示概率值和分位数 data Y probnorm 1 96 标准正态分布小于1 96的概率 putY q1 tinv 95 2 自由度为2的t分布的0 95分位数 q2 tinv 95 2 3 自由为2 非中心参数为3的t分布的0 95分位数 putq1 q2 run 结果 0 9750021049q1 2 9199855804q2 13 894376071 Page 51 SAS日期函数 SAS日期和时间存贮标准是以1960年1月1日0时0分0秒为起点 然后以相应的间隔记时 如1960年1月1日9时0分 按日记的数值就是0 按小时记的数值就是9 1960年1月2日0时0分 按日记的数值就是1 按小时记就是24等 由于日期函数是一类非常重要的函数 特别是对金融数据处理和金融计算 借助日期函数可以极大提高效率 Page 52 SAS日期函数 例计算两个日期之间的天数 data null sdate 01jan2002 d edate 01jan2003 d actual datdif sdate edate act act 按每个月的实际天数算 days360 datdif sdate edate 30 360 按每个月30天计算 putactual days360 run data null actual datdif 01jan2002 d 01jan2003 d act act days360 datdif 01jan2002 d 01jan2003 d 30 360 putactual days360 run 例中 两段程序的结果一样 actual 365 days360 360 Page 53 SAS日期函数 例以日为单位计算当前日期的天数 data x date y today putx y run 例中 DATE 和TODAY 结果一样 都是返回当天的天数 当然 也可以用一定的日期格式表示它们 data x date y today formatxyyymmdd10 putx y run 例计算日期值所在的年季月以及处于某月的第几天 data null sdate 01jan2002 d year year sdate qtr qtr sdate month month sdate day day sdate putyear qtr month day run 结果显示 x 17232y 17232 结果显示 x 2007 03 07y 2007 03 07 结果显示 Year 2002qtr 1month 1day 1 Page 54 PROCFREQoptions 选项说明 ORDER 选项及说明 SAS频数分析过程 Page 55 SAS频数分析 FORMCHAR 1 2 7 符号串 1规定垂直线字符 2规定水平线字符 7规定水平与垂直交叉线字符 通常情况下的FORMCHAR 选项 FORMCHAR 1 2 7 表格没有轮廓线和分隔线的FORMCHAR 选项 FORMCHAR 1 2 7 三个空格 Page 56 SAS频数分析过程 procformat value weekb 周一 monday 周二 tuesday 周三 wednesday 周四 thursday 周五 Friday 按数据输出值的格式排序 procfreqdata s regorder formatted formatted freq data internal tableweek formatweek weekb run 按频数的降序排序 procfreqdata s regorder freq formatted freq data internal tableweek formatweek weekb run 按数据集中数据出现的次序排序 procfreqdata s regorder data formatted freq data internal tableweek formatweek weekb run Page 57 WEIGHTvariable 该语句规定一个WEIGHT变量 它的值表示相应观测的权数 该变量的值应大于零 若这个值 该语句创建一个由PROCFREQ过程输出统计量的SAS数据集 OUTPUT创建的数集可以包括由TABLES语句规定的任意统计量 PROCFREQ过程每一次只允许使用一个OUTPUT语句 当规定多个TABLES语句时 OUTPUT语句创建的数据集内容对应于最后那个TABLES语句 当一个TABLES语句中规定多个表时 OUTPUT创建的数据集内容对应于最后那个表 选项说明 OUT 规定输出数据集 output statistic list规定输出数据集中所包含的统计量 SAS频数分析过程 Page 58 SAS频数分析过程举例 dataa doI 1to1000 X int ranuni 8888 3 1 Y int ranuni 8888 4 1 output end run procfreqdata a drop i tablexy 对所有变量进行频数分析时 不要该句和要该句效果一样 title 没有TABLES语句 run procfreq tablesxx y chisq run procfreq tablesx y list run 产生区间 0 1 上均匀分布的随机数1000个 分别将区间 0 1 均分成3和4个小区间 并把产生的随机数按所属区间转换为整数 然后对这些整数作频数分析 Page 59 均值过程 MEANS 用于计算变量的基本描述统计量 SAS均值过程 PROCMEANS BYvariable 1variable n CLASSvariable s FREQvariable IDvariable s OUTPUT TYPESrequest s VARvariable s WAYSlist WEIGHTvariable Page 60 SAS均值过程 Page 61 PROCMEANS option list选项说明 SAS均值过程 Page 62 ORDER 选项及说明 VARDEF 选项及说明 SAS均值过程 Page 63 statistic keyword list选项就是均值过程可以计算的描述统计量 规定的关键词可以分为三类 描述统计量关键词 分位数关键词 假设检验关键词 SAS均值过程 procmeansdata s regmaxdec 2meannmaxminrangestdalpha 05clmfw 8 varwaitquit classweek outputout amean mean wmean qn n wn qmax max wmax qmin min wmin qrange range wrange qstd std wstd q run Page 64 SAS单变量过程 单变量过程 UNIVARIATE 除了能计算均值过程的基本统计量外 还可以实现的计算和功能有 稳健性估计量 描述变量的分布图 频数表 多项检验 PROCUNIVARIATE BYvariable 1variable n CLASSvariable 1 FREQvariable HISTOGRAM IDvariable s INSET OUTPUTstatistic keyword 1 name s PROBPLOT QQPLOT VARvariable s WEIGHTvariable Page 65 SAS PROCUNIVARIATEDATA SAS datas et 选项说明 VARDEF 选项及说明 Page 66 SAS应用单变量过程进行多变量分析 procunivariatedata s regfreqnormalplot varwaitquit classweek outputout testmean mean wmean qstd std wstd qpctlpts 255075pctlpre ab run Page 67 SAS拟合密度曲线 第一步 创建一个数据集 随机生成一列正态分布和指数分布数据 datadistrdata dropn labelnormal x NormalRandomVariable exponential x ExponentialRandomVariable don 1to100 normal x 10 rannor 53124 50 exponential x ranexp 18746363 output end run Page 68 SAS procunivariatedata distrdatanoprint varNormal x histogramNormal x norma

温馨提示

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

评论

0/150

提交评论