注册地址 登录
数学建模社区-数学中国 返回首页

Inconceivable··· http://www.madio.net/?498319 [收藏] [复制] [分享] [RSS] 希望今年的数模之路不可思议···

日志

sas知识基础学习(一)

已有 617 次阅读2012-7-23 23:52 | sas知识基础学习

sas知识基础学习(上篇)

sas有两种语句:数据步和过程步。在sas中,通过数据步和过程步来使用sas语言的元素。
数据步:是一组语句组合:从外部文件中读取数据;将数据写入到外部文件中;读取sas数据文件和视图;创建sas数据文件和视图。
过程步:sas数据集进行分析和产生报表。例如:对数据集进行分析、画图、查询和打印等操作。

逻辑库:由一组sas文件组成。sas软件系统的信息组织有两层,第一层是sas逻辑库,第二层是sas文件。
    sas
逻辑库是一个逻辑概念,本事并不是物理实体,它对应的实体是操作系统下一个文件夹或几个文件夹中的一组sas文件。
    sas
逻辑库是一组存储在同一目录下被同一引擎访问的文件,其他文件也可以存放在该目录下,但是只有能被sas识别的文件才能显示在逻辑库中。

 

 建立sas逻辑库:libname语句
               libname libref <engine>'sas-data-library'
   
其中libref是逻辑库名,sas-data-library是逻辑库对应的物理地址,engine:引擎名称。
               libname resdat 'D:\resdat';

创建逻辑库resdat,对应的物理文件夹为D:\resdat
               libname a ('d:\resbd\','d:\resfin\');

多个文件夹创建一个sas逻辑库
              
临时逻辑库:指它的内容只在启动sas时存在,退出sas时内容完全被删除。系统默认的临时逻辑库为work,引用临时库中的文件时,可以不加库名work
永久逻辑库:它的内容在sas关闭对话之后仍旧保留,直到再次修改或删除。sas除了work以外的逻辑库都是永久库。引用永久逻辑库的文件时必须加上永久逻辑库名。例如:sashelp.Abmfolder

库引擎:是一组规定格式想逻辑库读写文件的内部命令。每个sas逻辑库都对应一个库引擎。sas逻辑库引擎是软件的一个元件用来组建sassas逻辑库之间的接口。
库引擎功能:读取和写入数据;列出库中的文件;删除和重命名文件。
数据集分类:sas数据集有两类:sas数据文件sas数据视图
    sas
数据文件同时描述信息和存储数据值,而sas数据视图则并不实际上存储数据,实际上sas数据视图就是一个查询语句。
   
这个查询语句建立了一个逻辑数据集,每次打开sas数据视图就相当于运行了一次查询语句。
      
注意:这两个数据文件在同一级目录或逻辑库下不能同名。

     
数据集构成:描述信息,数据值。

数据文件:sas数据文件是包含描述信息和数据值的sas数据集。
        
普通的sas数据文件:sas格式的数据文件。
        
接口数据文件:以其它数据软件格式储存数据的数据文件。
        
sas
数据文件和sas数据视图最大区别就数据文件实际储存数值,视图只是包含表的描述信息以及一组用来读取数据的查询语句,并不实际存储数据。
数据文件是静态的,而视图则是动态的;视图每次打开就相当于运行了异常查询语句,只有数据源发生变化,打开试图就会发生变化,而数据文件
                  
只有自身被修改时才会发生改变。
                  
sas
视图:native view:由数据步或sql过程创建
          interface view
:由sas软件创建。

数据步视图:包含用于从多个数据源中读取数据的数据步程序:原始数据文件;sas数据文件;proc sql视图;sas/access视图
    
定义格式:data 数据集名称/view=数据集名称;
                ...
                sas
语句;
                ....
                run;
       
上面的定义中,在data步中的最后一个数据集名称后加上"view=数据集名称",告诉sas程序进行编译,但不运行,而被编译的程序编码则
       
储存在view后的数据视图中。
       
例如:创建数据步视图:
         data resdat.class1/view=resdat.class1;
         set resdat.class;
         run;
proc sql
视图:是一个带有名称的proc sql查询。它可以读写的数据源同数据步视图。
            
例如:
                proc sql;
                  create view resdat.e as select * from resdat.class;
                quit;

表词典:是一个包含多个sas系统信息的sas数据视图。下面是一个使用proc sql查询表词典的例子:
proc sql;
    select libname,memname,memtype,nobs from dictionary.tables where libname='CE1';
    quit;
   
使用proc sql来查询所需要的表词典,这些表储存在dictionary逻辑库中。
   
输入输出格式:$ 指定为字符格式,如果该项空缺,则默认是数值格式;
              format:
规定有效sas输出格式;
              informat
:规定有效sas输入格式;
              w
:设定输入输出的长度,一般是数据所占的列的数目;
              d
:设定数值数据中小数点的位数;

sas
系统选项:options option(s);  --option设定一个或多个系统选项。
             options obs=5;  --
取数据集的前5个观测(行),obsobservations


路过

雷人

握手

鲜花

鸡蛋

发表评论 评论 (1 个评论)

回复 zuster 2012-7-24 17:34
呵呵,希望对初学SAS的读者有所帮助···

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-4-12 05:02 , Processed in 0.271508 second(s), 28 queries .

回顶部