码迷,mamicode.com
首页 > 其他好文 > 详细

sas简单使用

时间:2017-12-26 19:51:25      阅读:445      评论:0      收藏:0      [点我收藏+]

标签:group   数字   sam   line   color   简单   保留   log   label   

1 数据存取:

  逻辑库: libname  自己起的名字 ‘文件所在的路径’,若无这步数据则存在默认的work中。

         另一个方法在sas里自己建立一个逻辑库,但是关闭后就消失了。

  新建数据:data  表名

  引用数据:set 表名

不区分大小写
libname diabete ‘C:\Users\lenovo\Desktop\sas_program‘; /*diabete :自己起的逻辑库名字*/
data diabete.diabetes_female;                         /*diabetes_female:自己起的表名*/
set diabete.diabetes(keep=id sex age);          /*diabetes:使用的表名,也就是数据来源,
keep:需要保留的字段, drop:舍弃的,默认是全有的
*/   length Group $ 8 /* length:变量起名,group:自己起的字段名,8字符*/ if age>=55 then group=‘Seniors‘; /*if then else*/ else group=‘Under 55‘;
price = 44.7 /*常量正常赋值*/ run;

2 筛选数据的语句:

  * if , select(存在互斥的条件时)

 

  *比较运算符和逻辑运算符:

  技术分享图片                         技术分享图片

3 日期的处理(sas默认格式为数字)

  日期:初始值为1960-1-1

       时间值:午夜12点算起,0-86400

例子:打印出技术分享图片

 

 

表单为:

 3.技术分享图片

 

实现如下

技术分享图片

 

   /*************************************/
   /* set system options for report     */
   /*************************************/
options nodate nonumber; 
   /*************************************/
   /* create temporary data set         */
   /*************************************/
data test;
   Time1=86399;
   format Time1 datetime.;
   Date1=86399;
   format Date1 date.;
   Time2=86399;
   format Time2 timeampm.;
   Date1Month=month(Date1);
run;
   /*************************************/
   /* print data set                    */
   /*************************************/
proc print data=test noobs;
   title ‘Same Number, Different SAS Values‘;
   footnote1 ‘Time1 is a SAS DATETIME value.‘;
   footnote2 ‘Date1 is a SAS DATE value.‘;
   footnote3 ‘Time2 is a SAS TIME value.‘;
   footnote4 ‘Date1Month is the numeric month for Date1.‘;
run;

   /*************************************/
   /* clear any titles and footnotes    */
   /* in effect          实际没看出差别         */
   /*************************************/
title;
footnote;
 

3 打印:

/*************************************/
   /* set system options for report     */
   /*************************************/
options nodate pageno=1 linesize=64 pagesize=60;

   /*************************************/
   /* sort the data and create a        */
   /* temporary output data set         */
   /*************************************/
proc sort data=pilots out=tempemp;
   by jobcode gender;
run;
       
   /*************************************/
   /* print the sorted data set         */
   /*************************************/
proc print data=tempemp split=‘*‘;
   id jobcode;
   by jobcode;
   var gender salary;
   sum salary;
   label jobcode=‘Job Code*========‘
         gender=‘Gender*======‘
         salary=‘Annual Salary*=============‘;
   format salary dollar11.2;
   where jobcode in (‘PT1‘,‘PT2‘);
   title ‘Expenses Incurred for‘;
   title2 ‘Salaries for Pilots‘;    
run;

 

sas简单使用

标签:group   数字   sam   line   color   简单   保留   log   label   

原文地址:https://www.cnblogs.com/xiexiaoxiao/p/8119479.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!