2024-06-24 base SAS programming学习笔记5(format define)

1.PROC FORMAT 定义FORMAT存放位置     

  使用proc format自定义数据格式,常用格式如下:

        proc format  library="libref"  fmtlib ;

library= 表示指代提前使用libname定义的数据库,该数据库内含有包含format的目录,如果数据库没有该目录SAS会自动创建一个;如果不使用library= 则会将所创建格式放入默认的目录,该目录名为work.formats,因为SAS默认的数据库是work;fmtlib显示目录包含的format;

建议使用library 作为存放格式目录的数据库名,如:

libname  library "c:\sas\formats\lib";

proc  format  library=library;

        programming;

run;

如此我们自定义format均默认存放于library数据库名叫formats的目录中,还可以修改目录的默认的名称formats,如:

 proc  format  library=library.catalog;则创建的目录名由默认的formats改为catalog.

2.PROC FORMAT 定义FORAMT

proc  format  library=library ;

        value format-name 

                range1="label1"

                range2="label2";

run;

value 语句则定义放入目录内格式的具体内容:

        a)format-name 是格式名称名称,不超过8位字符,不以“.”和数字结尾,字符型的格式集range1为字符需要加上format-name 前面加上$符号;

        b)range 可以是多个数值或字符:

        单独字符或数值,24 或“A”;数值范围如LOW-500;字符范围如"A"-"M";一系列独立的字符或数字用","分隔,90,180,270或"B","D","F"

        可以使用<来避免数值范围的重叠如:

        low-<13="low"       (不含数字13,low表示变量最小值,如果low应用于字符则包括缺失)

        13-high="teenage" (不含数字20,high表示变量最大值)

        other="elder" (other表示前面没有定义的内容)

        c)label 是引号引用的字符串:不超256个字符,建议使用双引号可以包含单引号

定义完成后必须用分号结束表示该格式命名完成。

3.使用FORMAT

        Format使用前必须提前使用libname定义好存放FORMAT的目录的数据库,SAS会提前在该数据库内和WORK数据库内搜索FORMAT,如果需要删除提前定义好的格式可以使用PROC CATALOG实现。

        FORMAT的使用时在格式名称后加上“.”,可以在DATA步和PROC步都使用FORMAT,DATA步使用format会与该变量名永久绑定,如:

        format  jobtitle jobfmt.;

举例如下:

使用fmtlib会展示该目录内包含的所有格式名称及内容,如:

        libname  library "c:\sas\formats\lib";

        proc format library=library fmtlib;

        run;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值