SAS编程技术课后习题教学内容.docx

上传人:b****6 文档编号:6935284 上传时间:2023-01-12 格式:DOCX 页数:14 大小:61.81KB
下载 相关 举报
SAS编程技术课后习题教学内容.docx_第1页
第1页 / 共14页
SAS编程技术课后习题教学内容.docx_第2页
第2页 / 共14页
SAS编程技术课后习题教学内容.docx_第3页
第3页 / 共14页
SAS编程技术课后习题教学内容.docx_第4页
第4页 / 共14页
SAS编程技术课后习题教学内容.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

SAS编程技术课后习题教学内容.docx

《SAS编程技术课后习题教学内容.docx》由会员分享,可在线阅读,更多相关《SAS编程技术课后习题教学内容.docx(14页珍藏版)》请在冰豆网上搜索。

SAS编程技术课后习题教学内容.docx

SAS编程技术课后习题教学内容

第一章

1.缺省情况下,快捷键F1,F3,F4,F5,F6,F7,F8,F9和Ctrl+E的作用是什么?

F1帮助,F3end,F4recall调回提交的代码,F5激活编辑器窗口,F6激活日志窗口,F7键激活输出窗口,F8提交,F9键查看所有功能键功能,Ctrl+E键清除窗口内容。

2.缺省情况下SAS系统的五个功能窗口及各自的作用是什么?

怎样定义激活这些窗口的快捷键?

1)资源管理器窗口。

作用:

访问数据的中心位置。

2)结果窗口。

作用:

对程序的输出结果进行浏览和管理。

3)增强型编辑器窗口。

作用:

比普通编辑窗口增加了一些功能,如定义缩写,显示行号,对程序段实现展开和收缩等。

4)日志窗口。

作用:

查看程序运行信息。

5)输出窗口。

查看SAS程序的输出结果。

3.怎样增加和删除SAS工具?

使用菜单栏中的工具=>定制=>“定制”标签实现工具的增加和删除。

4.SAS日志窗口的信息构成。

提交的程序语句;系统消息和错误;程序运行速度和时间。

5.在显示管理系统下,切换窗口和完成各种特定的功能等,有四种发布命令的方式:

即,在命令框直接键入命令;使用下拉菜单;使用工具栏;按功能键。

试举例说明这些用法。

如提交运行的命令。

程序写完后,按F3键或F8键提交程序,或单击工具条中的提交按纽,或在命令框中输入submit命令,或使用菜单栏中的运行下的提交,这样所提交的程序就会被运行。

6.用菜单方式新建一个SAS逻辑库。

在菜单栏选择工具—》新建逻辑库出现如图所示界面。

在名称中输入新的逻辑库名称。

在引擎中根据数据来源选择不同的引擎,如果只是想建立本机地址上的一个普通的SAS数据集数据库,可以选择默认。

然后选中“启动时启用”复选框,在逻辑库信息中,单击路径后的“浏览”按钮,选择窗口可以不填,单击确定产生一个新的逻辑库。

7.说明下面SAS命令的用途并举例:

keys,dlglib,libname,dir,var,options,submit,recall.

Keys激活功能键的设定窗口。

libname建立SAS逻辑库。

Submit提交。

Options设定一个或多个系统选项,任何系统选项都有一个默认设置。

8.用菜单方式导入(Import)和导出SAS数据集(Export)。

文件->导入数据

出现上图对话框,选择要导入数据类型,然后NEXT。

浏览要导入数据的地址。

点击OK。

出现上图对话框,然后点击NEXT。

选择数据库存放的地址并命名。

 

第二次作业

1.构成SAS程序的语句分别分为哪两大类?

什么是SAS语句?

举例说明SAS语句的信息构成。

数据步、过程步

SAS语句就是一系列关键词、SAS名称、算符以及特殊字符的组合。

2.简述SAS名的种类及命名规则。

什么是SAS关键词?

SAS名的类型:

1逻辑库名;2数据集名;3变量名;4格式名;5过程名;6数组名;7语句标号名;8特殊文件名;9其它名。

SAS名称必须以字母或下划线开头;SAS名称可以包括字母、数字和下划线;SAS名称依据其使用的场合有一定长度限制。

3.SAS变量的类型和属性。

举例说明SAS自动变量。

数值变量

数值变量是SAS系统以浮点(floating-point)方式存储的数据变量,数

值变量包括日期和时间。

数值变量的值只能是数值。

字符变量

字符变量可以由阿拉伯字母、数字0-9以及其它一些特殊字符组成。

字符变量的值可以是字符、字母、特殊字符和数值。

字符变量名后跟

一个美元号($)表示该变量是字符型而不是数值型。

2)变量属性

SAS变量的属性包括:

长度、输入输出格式和标签。

未设定属性的变量在它们第一次出现时由系统给出。

4.给一个简单的SAS程序的例子,适当应用SAS的注释语句。

dataa;/*data为关键词,a为SAS名*/

x=12345.1234;

informatx12.4;/*输入语句,保留12字节和4位小数*/

formatx8.2;/*输出语句,保留8字节和2位小数*/

putx=;

run;

5.SAS数据集中变量链表时,X1~Xn表示什么?

特殊SAS变量列表_numerie_,_character_和_all_的含义。

X1~Xn从X1到Xn的所有变量

_numerie_所有数值变量

_character_所有字符变量

_all_所有变量

6.怎样提交SAS程序?

简述程序执行过程中,LOG窗口显示的信息结构。

8.简述SAS表达式定义及其结构构成元素。

表达式由一系列操作符和操作对象构成,产生一个目标值。

使用表达式可以对变量作变换和赋值,创建新变量,计算新数值以及控制条件语句的运行等。

包括操作对象和操作符

9.构成SAS表达式的操作对象和操作符有哪些?

操作对象有:

变量;常数

操作符包括:

算术算符;比较算符;逻辑算符;SAS函数;括号

11.举例说明数值常常数、字符常数和日期时间常数的表达方法。

引用数值格式

例:

标准格式:

1,01,+1,-1,1.1;

科学计数法:

1.1e11,1.2e-12;

十六进制格式:

1cx,12x,9x

字符常数通常由单引号括起来的1~32767个字符组成。

如果字符常数内含有引号,引用时,要么它的引号用两个连续的单引号,要么用一个双引号。

例:

name=”TOM’S”

引用日期时间常数,格式值带引号,后面跟一个D(日期)、T(时间)、或DT(日期时间)

例:

’ljan2000’d

16.简述数据步的功能。

1)创建SAS数据集(SAS数据文件或SAS数据视图);

2)读取外部数据文件创建SAS数据集;

3)通过对现有SAS数据集取子集、合并、修改和更新创建新的SAS数据集;

4)分析、操作或展示数据;

5)创建新变量;

6)产生报告、或将文件存储到硬盘或磁带上;

7)提取信息;

8)文件管理。

第三次作业

dataA;

infilecards;

inputFee@@;

cards;

35789936792123908790

33556612981100

;

run;

第四次作业

1、

dataa;

inputx;

y=y*x;

retainy1;

cards;

1

2

3

4

8

16

;

procprint;

run;

 

2、

datab;

inputstkcd$rdateyymmdd10.lstknm$var1var2var3;

cards;

;

run;

datac;

formatstkcdlstknmrdatevar3var2var1;

setb;

run;

 

3、

dataa;

inputdateprice;

cards;

1223

2352

1121

;

datab;

inputdateprice;

cards;

1255

5521

689

;

procsortdata=a;/*排序*/

bydate;

run;

procsortdata=b;

bydate;

run;

datac;

setab;

bydate;

procprintnoobs;

run;

 

4、

dataa;

inputlogdate$10.;

cards;

2011-12-2

2012-8-6

2012-8-10

;

run;

datab;

seta(rename=(logdate=date));

date=input(date,yymmdd10.);

labeldate='日期';

run;

 

5、

自动变量是由数据步语句自动创建的,这些自动变量不输出到数据集中,在重复过程中被保留。

6、创建组标识变量GROUP,将数据集A中的观测等分为10组,观测值不能整除10时,前余数组各多加一个观测值

dataa;

setresdat.treatnobs=nobs;x=(nobs-mod(nobs,10))/10;

callsymput('nobs',nobs);

callsymput('groupn',x);

Callsymput('mod',mod(nobs,10));

Dropx;

run;

%put&nobs&groupn;

datab;

doi=1to&mod

do

_n_=1to&groupn+1;

group=i;

output;

end;

end;

doi=&mod+1to10;

do_n_=1to&groupn;

group=i;

output;

end;

end;

Dropi;

run;

datac;

mergeab;

procsortdata=c;

bygroup;

run;

 

7、现有一个数据流:

a2b3cd46,按下面要求创建SAS数据集。

用语句inputid$no;变

量id取值上面数据流里的a,b,c,d,变量no取值2,3,4,6。

但是这个数据流存在问题:

如有的id没有no,有的no没有id。

创建SAS数据集,删除只有id没有no或者只有no没有id的观测,即把上面的c和6去掉,最后得到三个观测,a2,b3与d4。

dataa;

inputt$@@;

cards;

a2b3cd46

;

run;

datab;

seta;

id=lag(t);

no=t;

if'a'<=id<='z'and'0'<=no<='9';

dropt;

run;

8、现有一个数据流:

a23223bc4363c511d400620,按下面要求创建SAS数据集。

用语句inputid$no;变量id取值上面数据流里的a23,bc4,11d,变量no取值233,36,400。

但是这个数据流存在问题:

如有的id没有no,有的no没有id。

创建SAS数据集,删除只有id没有no或者只有no没有id的观测,即把上面的3c5和620去掉,最后得到三个观测:

a23223

bc436

11d400

dataa(keep=idno);

inputx$@@;

id=lag(x);

no=input(x,8.);

y=lag(no);

ify='.'andid^=''andno^='.';

cards;

a23223bc4363c511d400620

;

run;

第五次作业

1.创建一包含10000个变量(X1-X10000),100个观测值的SAS数据集。

分别用DATA步,DATA步数组语句和IML过程实现。

datatest1a;

informatx1-x100009.2;

doi=1to100;

output;

dropi;

end;

run;

2.多种方法创建包含变量X的10000个观测值的SAS数据集。

3.数据集A中日期变量DATE包含有缺失值,创建包含日期变量DATE的数据集B,并填充开始到结束日之间的所有日期值。

prociml;

x={'date'price};

t={11112,23412,21323,12345,123456,34566,67534,23457,21349};

printt;

t[1,1]=.;

t[2,1]=.;

t[5,1]=.;

t[9,1]=.;

createafromt[colname=x];/

appendfromt;

showdatasets;

showcontents;

closea;run;

quit;

dataa;

seta;

formatdateyymmdd8.2;

run;

dataa1;

seta

n=_n_;

formatdateyymmdd8.2;

retaintemp;

ifdate^=.thentemp=date;

elsedate=temp;

run;

dataa2;

n=_n_;

seta1;

run;

procsortdata=a2;

bydescendingn;

seta2

dropntemp;

run;

dataa4

seta3;

retaintemp;

ifdate^=.thentemp=date;

elsedate=temp;

run;

dataa4;

n=_n_;

seta4;

run;

procsortdata=a4out=b(drop=ntemp);

bydescendingn;

run;

 

4.利用随机数函数RANUNI对某数据集设计返回抽样方案。

datasample(drop=samplesizen);

samplesize=5;

don=1tosamplesize;

readit=ceil(ranuni(0)*totobs);

putreadit=;

setbb.classpoint=readitnobs=totobs;

output;

end;

stop;

run;

 

5.利用随机数函数RANUNI对某数据集设计不返回抽样方案。

dataa;

setbb.class;

keepname;

run;

datab;

setanobs=nobs;

ran=ceil(nobs*ranuni

(1));

putran=;

run;

procsortdata=b;

byran;

datac;

setb;

if_n_<=15;

run;

6.给下段程序的主要语句加注释。

STOP语句能否删除?

为什么?

不能删除。

强制结束数据步,因为set语句在数据步程序中会反复执行数据步的程序直到遇到文件结束(最后一跳观测)的标志,这里使用了指针选项可能碰不到这种标志,所以要用stop,否则就有可能无休止地执行下去。

因此不难看出,自制饰品在校园里也大有市场所在。

对于那些走在流行前端的女生来说,〝捕捉〞新事物便〝捕捉〞到了时尚与个性。

7.SAS系统显示表达式、函数、数据集、数组或矩阵的具体值时,常需要哪些语句和过程?

put;procprintprintshowlist;

 

如果顾客在消费中受到营业员的热情,主动而周到的服务,那就会有一种受到尊重的感觉,甚至会形成一种惠顾心理,经常会再次光顾,并为你介绍新的顾客群。

而且顾客的购买动机并非全是由需求而引起的,它会随环境心情而转变。

十字绣□编制类□银饰制品类□串珠首饰类□第六次作业

2.

3.功能性手工艺品。

不同的玉石具有不同的功效,比如石榴石可以促进血液循环,改善风湿和关节炎;白水晶则可以增强记忆力;茶晶能够帮助镇定情绪,缓解失眠、头昏等症状。

顾客可以根据自己的需要和喜好自行搭配,每一件都独一无二、与众不同。

SAS函数的自变量有几类?

自变量类型:

变量名、常数、函数、表达式。

3.举例说明自变量的表示方法和缩写规则。

图1-1大学生月生活费分布当函数有多个自变量时,必须用逗号分隔开。

7、你喜欢哪一类型的DIY手工艺制品?

自变量名缩写方法:

函数名(OF变量名1-变量名n);函数名(OF变量名1…变量名n)。

7.SAS系统是怎样存贮日期时间的?

SAS日期时间存贮标准是什么?

SAS日期和时间存储标准是以1960年1月1号0时0分0秒为起点,然后以相应的间隔记时。

如1960年1月1日9时0分,按日记的数值就是0,按小时记的数值就是9。

1960年1月2日0时0分,按日记的数值就是1,按小时记的数值就是24。

9.分别说明日期时间函数datdif,yrdif,date(),datetime,mdy,dhms有哪些实际用途。

秘诀:

好市口+个性经营DATADIF(sdate,edate,basis)返回两个日期之间的天数。

可是创业不是一朝一夕的事,在创业过程中会遇到很多令人难以想象的疑难杂症,对我们这些80年代出生的温室小花朵来说,更是难上加难。

YRDIF(sdate,edate,basis)返回两个日期之间的年数。

DATA()返回当前日期的SAS日期值。

DATETIME()返回当前日期和时间。

我们女生之所以会钟爱饰品,也许是因为它的新颖,可爱,实惠,时尚,简单等。

的确,手工艺品价格适中。

也许还有更多理由和意义。

那么大学生最喜欢哪种手工艺品呢?

此次调查统计如下图(1-3)MDY(month,day,year)返回由年、月和日定义的SAS日期值。

DHMS(date,hour,minute,second)返回由日期、小时、分钟和秒构成的SAS日期时间值。

400-500元1326%

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1