应用基础实验指导手册文档格式.docx

上传人:b****6 文档编号:15900979 上传时间:2022-11-16 格式:DOCX 页数:17 大小:27.02KB
下载 相关 举报
应用基础实验指导手册文档格式.docx_第1页
第1页 / 共17页
应用基础实验指导手册文档格式.docx_第2页
第2页 / 共17页
应用基础实验指导手册文档格式.docx_第3页
第3页 / 共17页
应用基础实验指导手册文档格式.docx_第4页
第4页 / 共17页
应用基础实验指导手册文档格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

应用基础实验指导手册文档格式.docx

《应用基础实验指导手册文档格式.docx》由会员分享,可在线阅读,更多相关《应用基础实验指导手册文档格式.docx(17页珍藏版)》请在冰豆网上搜索。

应用基础实验指导手册文档格式.docx

★有关知识★

SAS主界面中有几个常用的工作窗口:

“编辑窗口”用于录入、编辑程序;

“日志窗口”用于显示SAS系统运行信息;

“输出窗口”用于显示运行SAS程序产生的文字输出结果;

……。

SAS主界面上有几个常用的菜单:

有关文件操作的功能都组织在“文件菜单”中,SAS程序的提交运行、已运行过程序在编辑窗口的重新显示等功能组织在“运行菜单”中;

【实验内容之二】

试用编程方法和菜单|工具条方式分别建立用户数据库MyLib和MySas。

SAS主界面中工具条上有“创建新的数据库”工具图标,用于指定“库标识”与实际文件夹之间关联以创建一个逻辑数据库。

用libname语句可以创建、取消逻辑数据库。

LIBNAME语句的一般用法为:

libname数据库名[引擎]库位置;

libname数据库名(库位置1库位置2…);

库位置通常是‘目录的全路径文件名’表示;

引擎为读写数据的格式说明,如v8,v6,xport等。

【实验内容之三】

有10位同学的名字、年龄、体重、身高数据如下表所示;

试用多种手段将这些数据新建为一个存放在MyLib库下的health永久数据集。

health数据集的内容

Name

Age

Weight

Height

Tom

10

40

165

Mike

11

42

160

Jack

46

162

Brown

41

172

Lucy

39

155

Gup

38

166

Lee

9

182

Mary

159

Kate

37

Vencent

将上述程序输入编辑窗口并运行,观察输出结果和日志窗口中的内容。

建立SAS数据集方法有两大类:

一类是批处理式的,即用编程方法等建立数据集;

另一类是交互式的,如在viewtable窗、Analyist、INSIGHT等窗口中,交互录入数据。

【实验内容之四】

记事本stock.txt中存放有code(证券代码)、name(证券名称)、scale(流通盘)、EPS(每股收益)、share(投资组合中所占份额)、price(价格)的数据(以空格分隔),将其读入到SAS临时数据集stock中。

SAS数据步编程的基本结构为:

data数据集名;

infile'

文本格式数据的路径文件名'

;

input变量名表;

cards;

原始数据源

结构1结构2

input语句用于建立数据集的变量并从源数据中读入变量值;

若建立的变量为字符型,则在变量名后带上美圆号$。

【实验内容之五】

试着将SAS数据集stock中的数据导出到Excel表格stock.xls中。

在FILE菜单中的IMPORTDATA和EXPORTDATA子菜单可实现一些常见数据格式的数据文件与SAS数据集之间的转换。

实验二“通过编程建立SAS数据集

(1)”

基本掌握编程建立SAS数据集的方法,熟练运用input语句的4种基本输入模式以及混合模式。

有一个文本格式数据文件ex21.dat,其每行数据中含有工号(id)占前5位、姓名(Name)从第7-14位、部门号(dep)占据第1-2位、体重(weight)占据第16-19位,其部分数据如下:

13011zhangsan52.8

02021wangwuzi64.3

10005xuxiake55.0

试用列输入模式将其读入从而建立数据集dem21。

对数据字段位置固定的源数据,用input语句读入数据时,可按列模式输入,其一般形式为:

input变量名1[$]开始列数-结束列数[变量名2…];

有一个文本格式数据文件ex22.dat,其内各行依次含有id(工号)、birthday(生日)、marryday(结婚纪念日)、salaray(薪水)四变量,其部分数据如下:

10007:

31:

6831jul98$21,456.20

10107/21/6721jul97$30,234.85

10205-22-6622may96$15,876.

试用格式化输入模式将其读入从而建立数据集dem22。

对数据字段位置固定的源数据,也可以采用格式化的输入模式更灵活地建立SAS数据集。

一般形式:

input指针控制变量名输入格式名[…];

适用范围:

源文件中各变量所在位置必须是规则的(字段宽度固定);

可用指针控制变量读入的始点,终点由输入格式确定;

每个变量按输入格式读入指定的长度;

该模式特点与列模式基本类似,但可读入多种格式的数值字段,尤其在输入日期型数据时应使用该模式。

有一个文本格式数据文件ex23.dat,其内各行依次含有id(学号)、name(姓名)、age(年龄)、score(成绩)四类数据,彼此间空格分隔,其部分数据如下:

021496001张三丰21596

012256021司马相如22612

991034099王小二25498

试用列表输入模式将数据读入从而建立数据集dem23。

对分隔符(通常为空格)固定的数据源,可以采用自由列表模式输入数据。

一般形式为:

input变量名[$][…];

/*变量长度默认8,超过会截断*/

其中,变量名指明数据集中要建立的变量,它们出现的顺序必须与数据源中的数据字段顺序匹配。

一般情况下,变量的长度默认为8个字节,这对字符型变量而言,只能存放8个字符(4个汉字)。

length语句可改变变量的长度属性,一般形式为:

length变量名表[$]长度.;

另外,为突破变量的默认长度限制,也可以在列表输入模式中还可以加入输入格式修饰说明,一般形式为:

input变量名:

[$]输入格式.[…];

通过DATA步内编程来建立一个由姓名(name)、学号(id)、生日(birthday)、性别(sex)、总分(score)组成的SAS数据集,并输出数据集。

原始数据(不能改变其格式)部分如下:

乔本鬼太狼84/09/01601.8id=001sex=男

龟田次一郎82/12/23588.7id=002sex=男

山本美智子87/01/18623.3id=003sex=女

张美萍85/04/30589.6id=018sex=女

王晓刚84/09/11578id=021sex=男

杨英82/11/19587.9id=034sex=女

当源数据文件中的数据字段里包含字段名时,往往需要采用命名模式输入较为方便。

INPUT[指针]变量名=[$][...][@|@@];

INPUT变量名=[$]始列[-终列][.小数位][@|@@];

INPUT[指针]变量名=informat.[@|@@];

对一些复杂的非标准的源数据文件,各数据字段需要不同的读入模式才能正确匹配,这时可在input语句中混合使用各种读入模式。

但注意,在混合模式中,命名模式必须出现在最后。

上题中如要计算每人的年龄(age),应如何修改程序?

利用date()、time()等函数获取系统日期和时间。

例如:

dt=date();

te=time();

也能利用sysdate、systime系统宏变量获取日期时间。

dd="

&

sysdate"

d;

tt="

systime"

t;

用SAS函数INTCK(int,from,to)可以计算from到to两个日期之间的间隔数int,当int取“year”时,则计算的是间隔年份。

实验三“SAS数据步编程建立数据集

(2)”

能综合运用数据步编程的各种输入模式以及SAS函数,较熟练地将非规则的原始数据、多种数据格式准确地读入SAS数据集;

熟悉常用的SAS函数,如系统日期时间函数、随机数发生器函数、对数/指数/三角/求和/差分等数学函数。

编辑程序计算1989年5月1日('

01MAY89'

d)与2000年7月1日('

01JUL00'

d)之间相隔的天数,并输出在日志窗中。

用SAS函数INTCK(int,from,to)可以计算from到to两个日期之间的间隔数int,当int取“day”时,则计算的是间隔天数。

日期常数可用'

ddmmmyy'

d形式表示,其中ddmmmyy是date7格式的数据。

用金融函数(终值=compound(初值,.,复利率,期数);

复利率=compound(初值,终值,.,期数);

)计算在1980年7月1日存入1000元,年利率为1.25%,到2000年7月1日的终值,并输出在日志窗中;

若要在20年内获得本利和共2000,则年复利率应达到多少?

用SAS金融函数compound可以计算资金的终值或利率。

一般使用格式为:

终值=compound(初值,.,复利率,期数);

复利率=compound(初值,终值,.,期数);

要建立一个含变量课程(course)、教师(teacher)、学生(student)、学号(id)、成绩(score)的数据集。

根据原始数据的2种不同情况,请分别编程:

⑴:

MathLiMing

WangFang150195

EnglishZhangJun

GeMing154389

ChineseChenHong

HeFei162884

⑵:

StatisticsYangHui

HeFei162884。

①RETAIN语句使其中的变量为保留变量,即在数据步的每次循环时,不被重新初始化。

(有点类似C中的静态变量

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

当前位置:首页 > 经管营销 > 人力资源管理

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

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