朱世武sas编程技术教程第二版书上程序代码
- 格式:xls
- 大小:45.50 KB
- 文档页数:2
/* sa mpbdS ASpg选择2005年发行的部分债券与部分转可换债券作为样本 */ /*只选择记账式bdmd=1 */data bdin fo;s et re sbd.b dinfo;ifbdmd='1' a nd is sdt>='01ja n2005'd;r un;/* 国债 */d ata a1;se t bdi nfo;if Bd type='1';run;dat a a1;seta1 no bs=no bs;i f _N_/nobs>=0.95;ru n;/* 央行票据 */dataa2;s et bd info;if B dtype='2';run;da ta a2;set a2 n obs=n obs;if _N_/nob s>=0.98;r un;/* 金融债 */data a3;set b dinfo;if Bdty pe='3';ru n;d ata a3;se t a3nobs=nobs;if _N_/no bs>=0.95;run;/*次级债*/dat a a4;setbdinf o;if Bdt ype='4';r un;d ata a4;se t a4nobs=nobs;if _N_/no bs>=0.9;r un;/* 短期融资券(c p) */data a5;set b dinfo;if Bdty pe='5';ru n;da ta a5;set a5 n obs=n obs;if _N_/nob s>=0.98;r un;/*资产支持证券(ABS&MBS) */ d ata a6;se t bdi nfo;if B dtype='6';run;data a6;;seta6 no bs=no bs;i f _N_/nobs<=0.5;run;/* 企业债 */d ata a7;se t bdi nfo;if B dtype='7';run;da ta a7;set a7 n obs=n obs;if _N_/nob s>=0.98;r un;/*发行的全部可转换债券 */d ata c ovbd;setbdinf o;w hereconve rflg='1';run;/* c ovbd前面30%的记录 */data covb d;;s et co vbd n obs=n obs;if _N_/nob s<=0.5;ru n;/* 合并数据集 */dat a Res Dat.s ampbd;set covb d a1a2 a3 a4 a5 a6a7 ;dropinner code;run;/* NOTE:从数据集 WORK.COVB D 读取了 3 个观测。
清华大学经济管理学院硕士生导师简介-朱世武朱世武金融系副教授办公室伟伦楼321凯程教育是五道口金融学院和清华经管考研黄埔军校,在2014年,凯程学员考入五道口金融学院28人,清华经管11人,五道口状元武xy出自凯程, 在2013年,凯程学员考入五道口金融学院29人,清华经管5人,状元李少h出在凯程, 在凯程网站有很多凯程学员成功经验视频,大家随时可以去查看. 2016年五道口金融学院和清华经管考研保录班开始报名!个人简介研究成果研究项目朱世武,自2001至今,担任清华大学经济管理学院副教授。
1983年,他毕业于河南师范大学数学专业,并获得理学学士学位。
1987年,在武汉大学获得统计学专业的理学硕士学位。
1999年,赴上海财经大学学习,并获得该校数量经济学专业的博士学位。
1999年至2001年在清华大学经济管理学院作博士后研究。
他教授的主要课程包括:金融数据库、金融统计学、实证金融学、数据模型与决策、统计分析软件。
朱世武教授研究的主要领域是:固定收益、风险管理、金融计算与建模、金融数据库。
在从事的所有科研项目里,朱世武教授主要担任项目负责人。
他重点研究的项目包括:“随机边缘模型的统计分析”,“国家债务管理和利率研究”,“金融工程的理论,技术和方法”,“违约相关性度量与信用衍生工具定价研究”—国家自然科学基金委员会;“中国股票市场的证券模型”,“中国股票市场结构性指数设计”—中国证监会;“中信实业银行的私人金融模型”—中信实业银行;“基于微网格的网格计算研究,基础研究”,“度量违约相关性的研究”,“中国资本市场股权风险溢价的实证研究”—清华大学;“中国资本市场的股权风险溢价研究”—中国国家社会科学基金;“中国金融研究数据库”—清华211项目;“中国银行间债券市场期限结构最优化模型”—中国外汇交易中心和全国银行间同业拆借中心;“浙江财经学院金融实验室金融数据项目”—浙江财经学院;“浙江万里学院金融实验室金融数据项”—浙江万里学院;“人民币市场化利率中长期预测模型”—中国人寿资产管理有限公司;“农村金融市场风险管理研究”—香港汇丰银行;“青藏高原矿产资源开发利用战略研究”—中国地质大学(北京)地质调查研究院。
SAS编程与数据处理2-18章复习题朱世武著.《SAS编程技术与金融数据处理》.清华大学出版社. 2003.7第2章SAS系统快速入门1.SAS系统的特点。
2.简述SAS的三类功能与相应的模块举例。
3.SAS技术水平的三个层次.4.缺省情况下SAS系统的五个功能窗口及各自的作用是什么?怎样定义激活这些窗口的快捷键?5.SAS程序的一般特点。
6.SAS日志窗口的信息构成。
7.会使用工具菜单的options选项。
8.在显示管理系统下,切换窗口和完成各种特定的功能等,有四种发布命令的方式:即,在命令框直接键入命令;使用下拉菜单;使用工具栏;按功能键。
试举例说明这些用法。
9.理解SAS逻辑库、临时库和永久库的概念。
会用菜单方式新建SAS永久库。
10.说明下面SAS命令的用途:keys, dlglib, libname, dir, var, options, submit, recall.11.怎样增加和删除SAS工具?12.会用菜单方式导入(Import)和导出SAS数据集(Export)。
13.会用菜单方式创建查询。
14.会用SAS的INSIGHT模块进行简单的数据分析。
15.简述SAS逻辑库的作用。
第3章数据步创建SAS数据集1.理解SAS语句的信息构成。
举例说明。
2.SAS名的种类及命名规则。
什么是SAS关键词?3.理解Data步的Proc步。
4.SAS变量的类型和属性。
举例说明SAS自动变量。
5.理解SAS程序。
SAS程序的书写规则。
给一个简单SAS 程序的例子,适当应用SAS的注释语句。
6.SAS数据集中变量列表时,X1-Xn表示什么?特殊SAS变量列表_numeric_, _character_和_all_的含义。
7.怎样提交SAS程序?程序执行过程中,LOG窗口显示的信息结构。
8.怎样查看SAS程序的输出结果。
9.SAS表达式定义及其构成元素。
10.构成SAS表达式的操作对象和操作符有哪些?11.SAS常数及其类型。
第二讲:SAS编程任课人:王沛任课人王沛河南大学数学与信息科学学院E-mail: wp0307@1内容安排•SAS程序的基本结构•SAS语言基础•数据步•过程步•SAS运算符与函数2一、SAS程序的基本结构一、SAS 程序的基本结构SAS 语句以一个关键词开始,以分号(;)结束;data a;input x;d 或Lines 或Datalines数cards ;32354数据步:据4565;创建数据集名proc print ;过程步:调用p p run ;数据分析过程Proc print data=a;oc p t data a;Run; 数据集可以被调用4程序运行及内容保存运行编辑窗内程序点击图标按功能键按功能键“F8”在命令行(窗)键入“submit”在Run下拉菜单中选submit下拉菜单中选“submit”所激活窗口(Editor、Log、Output)内容的保存在命令行(窗)键入file “路径\文件名”点击图标在file下拉菜单中选“save ”或“save as”5常用的快捷键F4 recall命令,用于editor窗,将前面提F4recall交的程序调回,可多次使用F5 切换到editor窗;F5editog;F6 切换到log窗;F7 切换到output窗F8 submit命令F8b it清除当前窗的内容Ctrl-E 清除当前窗口的内容。
editor窗被清除的内容不能用F4调回6二二、SAS语言基础SAS 语句必须以“;”所有S S 语句必须以;结束data 初学者最容易犯的错误就是不写分号a;input x;。
此时SAS 将两个语句误认成一个语句(statement)。
cards ;43注意:(1)一个SAS语句可以写成两行或多行,如“a;”可写成5465多行,如data a;可写成data ;proc print ;a;语句可以写成简单的一行。
run ;(2)多个SAS 语句可以写成简单的行。
1、建立数据集data MM;input a $ b c;m=b+c;n+1;/*直接声明一个变量n,数据为累加型定义时不需要等号*/label m='results';cards;aa 1 2bb 3 4cc 5 6;run;proc sort data=MM;/*如果前面使用了rename语句对变量名重新进行了赋值的话,在排序时须使用新的变量名多级排序先总后分,与sql中相同*/by descending m ;run;proc print data=MM;var _numeric_;var _character_;title'chulijieg';run;注意:整体步骤为先生成数据集,然后再排序;最后输出结果;Var之后要有空格;排序时,by desecending m;必须用变量名m,不可用标签result;A为字符串时,需在后面加符号$,不规定字节数的话不用加点;数据输入时,每个对象须单独起一行;数据输入结束时,分号必须另起一行;下划线的输入:减号;若var numeric 在先,则输出时数字列在前;若character在先,则输出时字符列在先;2、生成空数据集data t2;length name $8. percent 8.;/*定义两个变量name、perceng的类型、长度,各参数均不可省略*/stop;/*没有stop的话会生成缺省变量*/run;2 用infile语句导入外部数据data graph1;infile'e:\' delimiter='09'x;/*数据以txt文档存储,位置为e:\直接从excel中黏贴至文本文档,分隔符为制表符制表符的表示方法为‘09’x */inputabcd;/*因前面已经指明分隔符为制表符,且变量皆为数值型,故虽未再进一步说明,程序仍会自动以分隔符分割变量*/run;proc print;run;linesize 语句:指定行长度,可突破262字节的限制2、读取指定位置的文件在e盘建立文件夹ee,其中一份sas数据集名为data1.读取data1 的程序为libname tt1 'e:\ee';/*将文件及ee的路径指定为tt1*/data a;set ;/*复制路径tt1下名为data1的数据集*/run;若要获取data1 的头文件:不平衡分组数据的读入data a;do j=1to2;input n;do i = 1to n;input x y @@;output;end;drop n i;cards;8/*必须换行,程序读数据8之后,转向执行do i语句,再次读取数据时指针会自动跳转至下一行*/1 112 223 334 445 556 667 778 8851 512 523 534 545 55;run;3 delimiter 定义分隔符data new1;infile cards delimiter=',';/*定义逗号为分隔符注意。
第一章 SAS编程操作预备知识一、SAS系统简介SAS是一个庞大的系统,它目前的版本可以在多种操作系统中运行。
当前在国内被广泛使用的最新版本是8.2版,功能很强大,我深有体会。
据说9.0版已在国外面世,已经有一些有关它的抢先报道在网络上广为流传,说它如何如何美妙,令人不禁充满期待。
SAS8.2的完整版本包含以下数十个模块。
BASE,GRAPH,ETS,FSP,AF,OR,IML,SHARE,QC,STAT,INSIGHT,ANALYST,ASSIST, CONNECT,CPE,LAB,EIS,WAREHOUSE,PC File Formats,GIS,SPECTRAVIEW,SHARE*NET, R/3,OnlineTutor: SAS Programming,MDDB Server,IT Service Vision Client, IntrNet Compute Services,Enterprise Reporter,MDDB Server common products,Enterprise Miner,AppDev Studio,Integration Technologies 等。
所谓模块,我的理解是将功能相近的程序、代码等集中起来组成相对独立的部分,就称之为模块,类似于办公软件系统office中包含的word、excel、access 等。
各模块具有相对独立的功能范围,我们常用的模块有base,graph,stat,insight,assist,analyst模块等,分别执行基本数据处理、绘图、统计分析、数据探索、可视化数据处理等功能。
其余模块我用得很少,知道得也很少,所以也就不多说了。
SAS系统的长处,体现于它的编程操作功能的无比强大。
SAS一直以来也是注重于其编程语言的发展,对于可视化方式的菜单操作投入较少,其较早的版本仅有很少的菜单操作功能,使用起来也是非常的别扭。
这很可能就是在windows 人机交互式操作系统占统治地位的今天,SAS较少被人问津的原因之一。