博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【SAS BASE】FORMAT Statement及PROC FORMAT
阅读量:5335 次
发布时间:2019-06-15

本文共 2115 字,大约阅读时间需要 7 分钟。

/*FORMAT语句*/ 1 FORMAT Profit Loss DOLLAR8.2 Saledate MMDDYY8.;2 PUT Profit DOLLAR8.2 LOSS DOLLAR8.2 Saledate MMDDYY8.;

FORMAT语句指定每个变量具体的格式;

这里特别要注意的是,FORMAT语句中,指定Profit和Loss同一个格式,为DOLLAR8.2.

 

FORMAT过程

1 DATA Carsurvey; 2    INFILE 'c:\myrawdata\cars.dat'; 3    INPUT Age Sex Income color$; 4 PROC FORMAT; 5    VALUE gender 1='Male' 6                         2='Female'; 7     Value agegroup 13-<20='Teen' 8                             20<-65='Adult' 9                             60-High='Senior';10     Value $ color 'W'='Moon White'    /*请注意此处$的位置*/11                        'B'='SKy Blue'12                         'Y'='Sunburst Yellow'13                         'G'='Rain cloud Gray';14 PROC PRINT DATA=Carsurvey;15     FORMAT Sex gender. Age agegroup. color $ col. Income Dollar8.;16     TITLE '...';17 RUN;

备注:

1.格式名要求:

  • 包括$在内,不能超过32个字符;
  • 不能以数字开头或结尾;
  • 不能包含下划线以外的字符;
  • 不能使已经存在的格式的名字。

2. Value后面的Range的要求:

  • 字符型变量的值必须放在引号内;
  • 若要复制的range不止一个,可用逗号将他们隔开或用连号(-)表示连续的范围;
  • 关键词LOW和HIGH表示变量的最大值和最小值;
  • 可用关键词OTHER给VALUE语句中未分配的值分配格式.

利用FORMAT过程来Grouping数据

1 DATA Books; 2     INFILE 'C:\MyRawData\LibraryBooks.dat'; 3     INPUT Age BookType $ @@; 4 RUN; 5  6 *Define formats to group the data; 7 PROC FORMAT;/*定义一个新的FORMAT*/ 8    VALUE agegap 9               0-18 = '0 to 18'10               19-25= '19 to 25'11               26-49 ='26 to 49'12               50-HIGH= '50+';13    VALUE agegpb14               0-25 = '0 to 25'15               26-HIGH= '26+';16    VALUE $ typ17               ‘bio','non','ref'='Non-Fiction'18               'fic','mys','sci'='Fiction';19 RUN;20 21 *Create two way table with Age grouped into four catefories;22 PROC FREQ DATA=books;23     TITLE 'patron age by book type: four age group';24     TABLES BookType*Age/NOPERCENT NOROW NOCOL;25     FORMAT Age agegap. BookType $ typ.;/*引用自定义的格式*/26 RUN;27 28 *Create two way table with Age grouped into two catefories;29 PROC FREQ DATA=books;30     TITLE 'patron age by book type:Two age group';31     TABLES BookType*Age/NOPERCENT NOROW NOCOL;32     FORMAT Age agegab. BookType $ typ.;/*引用自定义的格式*/33 RUN;

转载于:https://www.cnblogs.com/chenyn68/p/3866123.html

你可能感兴趣的文章
洛谷P1005 矩阵取数游戏
查看>>
在Silverlight中使用HierarchicalDataTemplate为TreeView实现递归树状结构
查看>>
无线通信基础(一):无线网络演进
查看>>
如何在工作中快速成长?阿里资深架构师给工程师的10个简单技巧
查看>>
WebSocket 时时双向数据,前后端(聊天室)
查看>>
关于python中带下划线的变量和函数 的意义
查看>>
linux清空日志文件内容 (转)
查看>>
安卓第十三天笔记-服务(Service)
查看>>
Servlet接收JSP参数乱码问题解决办法
查看>>
【bzoj5016】[Snoi2017]一个简单的询问 莫队算法
查看>>
Ajax : load()
查看>>
MySQL-EXPLAIN执行计划Extra解释
查看>>
Zookeeper概述
查看>>
Zookeeper一致性级别
查看>>
单例模式的几种实现方式及对比
查看>>
邓白氏编码 申请
查看>>
Linux远程登录
查看>>
Linux自己安装redis扩展
查看>>
HDU 1016 Prime Ring Problem(dfs)
查看>>
C#中结构体与字节流互相转换
查看>>