ImageVerifierCode 换一换
格式:DOC , 页数:9 ,大小:70KB ,
资源ID:9433082      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/9433082.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(SAS数据集.doc)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

SAS数据集.doc

1、SAS数据集 SAS系统使用的数据文件称为SAS数据集。 1. SAS的工作环境与SAS程序的结构 1.1SAS的工作环境 主要有四个窗口: PROGRAM EDIT窗口:用于程序的编写、运行和调试。 LOG窗口:用于监视程序的执行过程,提示程序运行过程的各种信息。 记录了SAS程序运行的全部情况,如程序语句的语法错误,运行中的逻辑错误和警告信息,运行时使用的数据集,建立的库文件,以及运行时间等。 OUTPUT窗口:用于显示程序运行的结果。 显示程序的统计分析结果,还可以在窗口对计算结果进行输入、输出、编辑、修改,以及文件格式的转换等操作。 GRAPH窗

2、口:用于图形展示。 还可以在窗口对图形进行输入、输出、编辑、修改,以及图形格式的转换等操作。 另外, Explorer窗口用于显示SAS库(SAS系统命名的库名与磁盘某文件夹间的关联)及其SAS数据集。 Results窗口用于显示SAS程序运行成功时程序输出结果的目录。 SAS系统还有许多窗口,每个窗口都有其特定功能。根据需要可以关闭窗口,也可以通过主菜单View的下拉菜单打开或切换窗口。 运行程序的方式有: Submit:运行全部程序。 Submit top line:运行程序的前n行。 程序运行后系统自动删除已经运行完毕的语句,运行结果显示在OUTPUT

3、窗口,执行过程的各种信息显示在LOG窗口。程序全部运行完毕后PROGRAM EDIT窗口的内容被清除,如果用户希望继续修改或调试该程序,可通过主菜单Locals项下的Recall text选项重新取出程序。 1.2 SAS程序的结构 SAS程序采用模块化结构,模块之间相互独立,每个模块完成一个任务。模块可分为两种类型:一种类型是数据模块,数据模块以英文单词data作为开始语句。另一种是程序模块,程序模块以proc(即英文单词procedure的前四个字母)作为开始语句。模块中的语句用“;”分隔,同一个语句的不同项之间用一个以上的空格分隔。大多数模块用语句“run;”作为结束语句,也有

4、一些模块用语句“quit;”作为结束语句。在一个程序中可以包含多个数据模块和程序模块,模块的位置是任意的。程序按照语句出现的先后顺序执行。 除了数据模块和程序模块之外,用户还可以使用说明语句定义全程量。说明语句可以出现在程序的开始,或者任意两个模块之间,说明语句定义的量的作用范围是该语句后面的所有模块。 例1是一个SAS程序的例子,程序中包含一个数据模块,两个程序模块。在数据模块中输入了对四个变量s,x,y,z三次观测的数据,即建立了一个包含三个记录的数据文件example。S是字符串变量,x,y,z是数值变量。过程proc的功能是将数据文件example的内容显示在OUTPUT窗口。过程

5、means的功能是计算变量x,y(由var指定的变量)的描述性统计量。 [例1] Data example; Input s $ x y z; cards; A 1 2 3 B 4 5 6 C 7 8 9 run; proc print data=example; run; proc means data=example; var x y; run; 1.3 SAS程序的语法 编写程序时必须遵循所使用的软件的语法规则,SAS程序的语法规则可以归纳为以下几条: 标识符或数据之间至少用一个以上的空格分隔,

6、例如:input s$。 每个语句用分号作为结束标志。 变量名或其他名称最多包含8个符号,并且第一个字符为英文字母,名称中不能有空格,或SAS系统的保留符号,如:“-”,“.”,“,”,“;”,“…”,“$”等。 SAS程序可以处理带有缺失数据的文件,数据缺失值用“.”表示。 SAS程序只处理数值和字符串两种类型的变量,为了和数值变量相区别,输入语句中字符串变量名使用“$”作为后缀。 程序中可以包含注释语句,注释语句以“/*”作为一行的开始符号,表示该行为注释语句。 除数据外,SAS程序不区分英文字母大小写。 1.4 常用的运算符号 名称 符号

7、 例子 加号 + A=X+Y+Z 减号 — B=X-Y-Z 乘号 * C=X*Y*Z 除号 / D=X/Y 乘方 ** E=X**2 等于 = A=X+Y+Z

8、 不等于 ^= B^=X-Y-Z 大于 > C>X*Y*Z 小于 < D= E>=X+Y+Z 小于等于 <= F<=X+Y+Z 属于 IN G IN (X Y Z) 与

9、 &(AND) A

10、函数 数据集函数 库和目录函数 2. 临时数据集和永久数据集 2.1临时数据集 临时数据集是程序在执行过程中建立的临时数据文件,退出程序以后计算机不保存临时数据集中的数据。 【例2】建立一个临时数据集,存放表1-1中的数据。 Data sale; Input name $ sales region $ type $; Cards; Stafer 9664 east p Young 22969 east p Stride 27253 east p Topin 86432 east c Spark

11、99210 east c Vetter 38928 west c Curci 21531 west p Marco 79345 west p Greco 18523 west p Ryan 32915 west p Tomas 42109 west p Thalman 94320 south c Moore 25718 south p Allen 64700 south c Steiam 27634 south p

12、 Farlow 32719 south p Smith 38712 south p Wilson 97214 south c Run; Data语句是数据模块的起始语句,data后面跟随的是创建的数据集的名字,这个例子建立的临时数据集的名字是sale。 Input语句说明要输入的数据项,或者称为变量。变量名之间用空格分开,这个例子中有四个变量name,region,type,sales,除了sales外其余的变量都是字符串类型,所以变量名后要加后缀$。 该数据集中包含对四个变量name,region,type,sales的18次观察值,也

13、可以说包含18条记录。 Cards语句用来说明它的后面跟随的是数据。 Run语句是过程结束语句。 这个程序建立了临时数据集sale。程序运行结束后,sale将不复存在。观察这段程序可以看到,这个程序把要处理的原始数据放在程序内部。当数据量很小时,这种写法很方便。但是,当数据量很多,程序结构就不清晰,会给程序的调试带来不便。另外,数据放在程序内部的做法,使得这些数据只能供一个程序使用,限制了数据的使用范围,不利于数据的共享。因此,当数据量大时,应该建立永久数据集。 2.2 永久数据集 SAS永久数据集是以文件的形式存储在磁盘上的数据文件。使用永久数据集时,除了要说明数据集的名称外,还要

14、说明数据文件在磁盘上的位置,即文件的路径。下面利用表1-1中的数据建立永久数据集。 【例3】建立一个永久数据集 Libname path “a:mydir”; Data path.sale; Input name$ sales region$ type$ @@; Cards; Stafer 9664 east p Young 22969 east p Stride 27253 east p Topin 86432 east c Spark 99210 east c Vet

15、ter 38928 west c Curci 21531 west p Marco 79345 west p Greco 18523 west p Ryan 32915 west p Tomas 42109 west p Thalman 94320 south c Moore 25718 south p Allen 64700 south c Steiam 27634 south p Farlow 32719 s

16、outh p Smith 38712 south p Wilson 97214 south c Run; Libname是一个说明语句,说明在后面程序中使用path代表磁盘目录a:\mydir,程序使用的数据文件存储在该目录下。 Data path.sale说明了一个名为sale的永久数据集,永久数据集的名称包含两部分,前一部分是我就路径,后一部分是文件名,中间用“。”号分隔。 Input语句结尾的@@表示一个数据行包含多个记录,当数据较多时用这种格式输入数据比较方便。 2.3 使用过程建立永久数据集 SAS系统还提供了交互式建立永久数据集

17、的工具。下面我们使用SAS/FSP模块提供的过程FSVIEW来建立永久数据集。 【例4】使用过程FSVIEW来建立永久数据集 Libname path ‘a:\mydir’; Proc fsview new=path.f; Run; 运行上面的程序后,将进入FSVIEW工作窗口,该窗口包含内容如下: Name type length label format (informat) 用户可以在这个窗口中完成数据集的定义工作,具体的定义方法是: 在name下定义数据集中使用的数据项的名称。 在type下定义数据项的数据数据类型,输入N表示数值类型

18、输入$表示字符串类型。 在length下定义数据的长度,缺省值为8。 在lable下定义数据显示的标号。 在format下定义数据的输出格式。 在informat下定义数据的输入格式。 使用FSVIEW过程还可以编辑已经建立的SAS数据集,例如,执行下面的程序后将进入数据集a:\mydir.f的编辑界面,在编辑界面可以进行数据录入和修改操作。 【例5】使用FSVIEW过程编辑已经建立的SAS数据。 Libname path’a:\mydir’; Proc fsview data=path.f; Run; 3. 使用非SAS格式的数据文件 在SAS系统中可以使用其他应用软

19、件建立的数据文件,由于这些数据文件的存储格式和SAS数据文件的存储格式不同,所以使用前应利用SAS系统提供的数据转换程序进行处理。下面介绍最常见的文本格式的数据文件的使用方法,其他数据格式文件的转换方法请参阅有关的SAS手册。 【6】从文本格式的数据文件sale.dat读取数据,建立SAS数据集。 Data sale; Infile ‘a:\mydir\sale.dat’; Input name$ sales region$ type$; Run; Infile语句打开存储在a:\mydir目录下的文本格式的数据文件sale.dat。 Input语句读入数据。 注意

20、原始数据文件中每行应包含四个数据项,数据之间用空格分隔。 4. 数据的修饰 数据的修饰包括新变量的生成,对数据文件进行投影、筛选、连接等操作。对数据文件进行修饰可以得到满足分析需要的数据。 4.1 赋值语句 使用赋值语句可以为变量赋值,生成新的数据项。SAS系统提供了丰富的函数,在赋值语句中可以充分利用这些函数对原始数据进行加工,生成新的数据项。 【例7】输入x,y,z三个变量的观测数据,并生成新的变量s。 Data a; Input x y z; S=x+y+z; Cards; (略) Run; 上边的程序每输入变量x,y,z的一次观测,就计算一次x+

21、y+z,并把结果赋给s,程序最终建立了包含x,y,z,s 四个数据项的临时数据集a。 【例8】输入变量x,y,z,计算x^2+y^2+z^2的平方根,并将计算结果赋给变量r。 Data a; Input x y x; R=sqrt(x*x+y*y+z*z); Cards; (略) Run; 【例9】利用条件语句和赋值语句建立新变量。 Data sale; Input name$ sales region$ type$; Select; When(sales<20000) group=10000; When(20000<=sa

22、les<40000) group=30000; When(40000<=sales<60000) group=50000; When(60000<=sales<80000) group=70000; Otherwise group=90000; End; Cards; (数据同表1-1) Run; 这段程序利用赋值语句建立了一个变量group,它是对变量sales进行分组后的组中值。 Select语句称为多路分支语句,它的工作方法是先计算when后面的条件语句,如果条件语句的值为真,则执行条件语句后面的内容,然后跳转到end语句。为假,则执行othe

23、rwise后面的语句。 Select语句的另一种用法为: Select 表达式; When (值或表达式)语句1; …… When (值或表达式)语句n; Otherwise 语句; End; 如果select后面表达式的计算结果等于某个when语句后面的值或表达式结果,则程序执行该语句对应的语句,然后跳转到end语句。如果所有when语句的值或表达式的计算结果均不等于select后面表达式的计算结果,则程序执行otherwise后面的语句。 4.2 数据项投影 SAS系统提供的对数据项进行投影操作的语句有kee

24、p和drop。下面两段程序功能相同,都是建立数据集b时,只保留x和y数据项。 【例10】建立数据集b,只保留x和y数据项。 Data a; Input x y z; …… Run; Data b (keep=x y); Set a; Run; 【例11】建立数据集b,并从中删除数据项z。 Data a; Input x y z; …… Run; Data b; Set a; Drop z; Run; 语句set a 说明将数据集a中的数据连接到数据集b的末尾。 Keep选项指示程

25、序在连接时只保留数据项x和y。 Drop语句说明程序在连接后从数据集b中删除数据项z。 4.3 记录的筛选 SAS系统提供了对文件进行筛选操作的语句。下面是对记录进行筛选的例子。 【例12】从表1-1中所列的销售类型为c的记录。 Data sale; Input name$ sales region$ type$; If type =‘p’then delete; Cards; (数据同表1-1) Run; 这段程序每输入一条记录就判断本次观测的机器类型是否为p,如果是删除这次观测,最终程序建立的数据集sale中只有机器类型为c的记录。

26、 If是判断语句,if后面是条件,当条件为真时,程序执行then后面的语句。If语句的另一种结构为if<条件>then<语句1>else<语句2>,当条件为真时,程序执行语句1,否则执行语句2. Delete是删除语句,执行一次delete语句,数据集的当前记录被删除。 下面的程序根据表1-1建立了两个数据集,sale1中包含销售类型为打印机的有关记录,sale2中包含销售类型为计算机的有关记录。 【例13】分别建立包含销售类型为计算机和打印机的数据集。 Data sale1 sale2; Input name$ sales r

27、egion$ type@ ; If type =’p’then output sale1 ;else output sale2; Cards; (数据同表1-1) Run; Output 语句的功能是将当前记录连接到指定数据集的末尾。 4.4 连接数据集 根据分析的需要,可以将多个数据集横向或纵向连接为一个数据集。连接可以是垂直连接,也可以是水平连接。 4.4.1 垂直连接数据集 垂直连接是将一个数据集中的数据连接到另一个数据集的末尾,完成垂直连接的语句为set。下面是完成数据集a和b的垂直连接的一个例子。 【例14

28、已经存在两个数据集a和b,它们的内容如下: 数据集a中的数据为: 数据集b中的数据为: 6 9 mouse 1 5 mouse 1 2 print 6 3 computer 2 7 scaner 执行下面的程序, Data a; Set b; Run; 运行后数据集a中的内容变为: 6 9 mouse

29、 1 2 print 2 7 scane 1 5 mouse 6 3 computer 【例15】使用set语句,利用数据集a,b建立永久数据集a:\mydir.c。 Libname path ‘a:\mydir’; Data path.c; Set a b; Run; 4.4.2 水平连接数据集 使用merge语句可以水平连接两个数据集。连接数据文件时特别要注意两个文件记录之间的对应关系。 【例16】表5和表6表示数据集a和b,它们分别记

30、录了学生的专业和家庭收入情况,将它们连接成一个新的数据文件。 表5 学生专业情况 表6学生家庭收入情况 学号 姓名 专业 班级 学号 家庭收入 家庭人口 34200 miaojing xinxi 8701 34108 3500.00 3 35012 wangmin tongji 2001 34200 6200.00 4 35228 dinghui xinxi

31、 8701 34228 2400.00 4 35618 wangjian tongji 9019 35618 1500.00 3 36120 liufang jinrong 2006 36120 1800.00 3 36336 lanrui jinrong 2006 36336 2700.00 3 使用下面的程序连接表5和表6生成新的数据集,见表7. Data a; Merg

32、e a b; Run; 新数据集的内容如表7所示。 学号 姓名 专业 班级 家庭收入 家庭人口 34200 miaojing xinxi 8701 3500.00 3 35012 wangmin tongji 2001 6200.00 4 35228 dinghui xinxi 8701 2400.00 4 35618 wangjian tongji 9019 1500.00 3 36120 liufang jinrong 2006 1800.00 3 36336 lanrui jinrong 2006 2700.00 3 4.5 使用修饰数据 5.

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服