SAS上机练习题(全部-含参考答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
重庆医科大学--卫生统计学统计软件包
SAS上机练习题(一)
1、SAS常用的窗口有哪三个?请在三个基本窗口之间切换并记住这些命令或功能键。
2、请在PGM窗口中输入如下几行程序,提交系统执行,并查看OUTPUT窗和LOG窗中内容,注意不同颜色的含义;并根据日志窗中的信息修改完善程序。
3、将第2题的程序、结果及日志保存到磁盘。
4、试根据如下例1的程序完成后面的问题:
表1 某班16名学生3门功课成绩表如下
问题:
1)建立数据集;
2)打印至少有1门功课不及格同学的信息;(提示,使用if语句)
参考程序:
data a;
input id sh wl bl;
cards;
083 68 71 65
084 74 61 68
085 73 75 46
086 79 80 79
087 75 71 68
084 85 85 87
085 78 79 75
086 80 76 79
087 85 80 82
088 77 71 75
089 67 73 71
080 75 81 70
118 70 54 75
083 70 66 84
084 62 73 65
099 82 70 79
;
run;
data b;
set a;
if sh<60 or wl<60 or bl<60then output;
run;
proc print data=b;
var id sh wl bl;
run;
5、根据下列数据建立数据集
表2销售数据
开始时间终止时间费用
2005/04/28 25MAY2009 $123,345,000
2005 09 18 05OCT2009 $33,234,500
2007/08/12 22SEP2009 $345,600
提示:(
计算,如果读入错误,可试着调整格式的宽度;显示日期需要使用输出格式) 开始时间,输入格式yymmdd10.
终止时间,输入格式date10.
费用,输入格式dollar12.
参考程序:
data a;
input x1 yymmdd10. x2 date10. x3 dollar13.;
cards;
2005/04/28 25MAY2009 $123,345,000
2005 09 18 05OCT2009 $33,234,500
2007/08/12 22SEP2009 $345,600
20040508 30JUN2009 $432,334,500
;
run;
proc print;
run;
proc print;
format x1 yymmdd10. x2 date9. x3 dollar13.;
run;
6、手机号码一编码规则一般是:YYY-XXXX-ZZZZ,其YYY为号段;XXXX一般为所在地区编码;ZZZZ为对应的个人识别编号。下面有一组电话号码(来源于网络,末位以X替换),请用程序完成下列要求:
(1)分别列出属于联通、移动、电信的号码;
(2)分别提取地区编号及个人识别编号。
(提示:列输入方式或者字符串操作)
说明:
移动:134-139、150、151、152、157、158、159、188
联通:130、131、132、155、156
电信:133、153、180、189
参考程序:
data a;
input y 1-3 x $ 4-7 z $ 8-11;
if134<=y<=139 or y in (150,151,152,157,158,159,188) then ygrp='移动';
if y in (130,131,132,155,156) then ygrp='联通';
if y in (133,153,180,189) then ygrp='电信';
cards;
1508320464X
1510291126X
1339644156X
。。。。。。
1513441713X
1308279203X
1897876466X
;
proc print;
run;
7、下表是某班学生几门功课的成绩,其中形势课是考查课,其它均为考试课。请完成以下处理并且保存程序、结果和日志:(注意函数在DATA STEP中使用的位置)
(1)用Mean()函数求出每位同学的平均分,将其保存在变量中;
(2)用sum()函数或者表达式求出每位同学的总分,将其保存在变量中;
(3)如果每门考试课权重是0.75,每门考查课权重为0.25,试求每位同学的加权平均分;
(4)将数据集保存为永久数据集,保存位置为“D:\mydata\”;
(5)调用上面的永久数据集,并将男、女生的成绩分别保存在数据集Dmale和Dfemale中。
参考程序:
libname pb "D:\mydata\";
data pb.score;
input id$ xb gs sl rj sltj xs;
mscore=mean(of gs sl rj sltj xs);
tscore=sum(of gs sl rj sltj xs);
wmscore= ((gs+sl+rj+sltj)*0.75+xs*0.25)/(0.75*4+0.25); cards;
0083 1 73 73 64 74 75
0414 1 90 79 71 85 78
0564 1 97 87 89 91 80
0774 1 40 60 61 65 75
0873 1 68 65 60 76 75
0874 1 74 68 56 60 75
0875 1 73 46 65 66 87
0876 1 79 79 74 89 87
0877 1 75 68 55 60 70
0878 1 76 60 64 71 80
0880 1 81 73 60 75 82
0881 1 76 81 84 89 78