SAS--input、put、处理时间变量

  

data sasuser.talent10;
    set sasuser.talent;
    month=month(lasthried);
    where month=10;
run;
/*sum等算数函数可以直接加不是numeric类型的变量,会建立一个临时变量将char变成num,但是where不行*/
   /*  Base2=input(testbase,4.)-avgbase;
    mean(of a1-a5);    一系列变量时*/
   data sasuser.talent2;
   set sasuser.talent;
   FtHeight=input(height,2.)/12;    /*input字符变数字,format用cha本身的!!*/
proc print data=sasuser.talent2;
run;

/*产生cha变量*/
/*     a=sex;  sex本身就是cha
    a=sex||‘/‘||age;    concatenate
    a=sex||‘/‘||put(age,4);
*/

data sasuser.njtalent;
   set sasuser.talent;
   NewPhone=‘(201)‘||put(phone,7.);
run;
proc print data=sasuser.njtalent;
   var id phone newphone;
run;

data sasuser.talent10;
    set sasuser.talent;
    month=month(lasthired);
run;
proc print data=sasuser.talent10;
    where month=10;
run;

data sasuser.talent10;
   set sasuser.talent;
   if month(lasthired)=10;
   format lasthired date9.;  /*给5位数的date一个12FEB2000这样一个可读的格式*/
run;
proc print data=sasuser.talent10;
run;

data sasuser.taloct99;
   set sasuser.talent;
   if year(lasthired)=1999 and month(lasthired)=10;
   format lasthired date9.;
run;
proc print data=sasuser.taloct99;
run;

data sasuser.master;
    set sasuser.talent( OBS=5);
    rephired=mdy(month,day,1998);
    format rephired date9.;
    AA=DATE();
    BB=TODAY();
run;
proc print data=sasuser.master ;
run;

data master;
    set sasuser.master;
    qtrselapsed=intck(‘qtr‘,rephired,lasthired); /*计算时差*/
run;
proc print data=master;
run;

/*给二参数,向后加5个月,b表示1号,m=15号,e=30号*/
MonthX=intnx(‘month‘,‘01jan95‘d,5,‘b‘); /*12935  (June 1, 1995)*/
MonthX=intnx(‘month‘,‘01jan95‘d,5,‘m‘); /*12949  (June 15, 1995)*/
MonthX=intnx(‘month‘,‘01jan95‘d,5,‘e‘);/*12964  (June 30, 1995)*/

原文地址:https://www.cnblogs.com/super-yb/p/11830105.html

时间: 2024-08-01 21:09:12

SAS--input、put、处理时间变量的相关文章

SAS中的自动变量

Sas自动变量:由数据步语句自动创建的. _n_ :观测序号: _error_:错误信息变量; _numeric_ :所有数值变量: _character_:所有字符变量; _all_:所有变量; fisrt.variable:同一by组第一个观测: last.variable:同一by组最后一个观测: _iorc_:若数据集没有观测,则iorc=1,否则iorc=0,当使用modify语句并搭配by语句和key=选项时,会被创建:

数据挖掘之处理分类自变量与处理时间变量

某些数据挖掘方法能够直接处理分类自变量,但很多数据挖掘方法都只能处理数值自变量,如线性回归.神经网络等,使用这些方法时就需要把分类自变量转换为数值自变量. 对于定序自变量,最常用的一种转换是按各类别的序号直接将该变量转换为数值自变量.对于名义自变量,最常用的转换是将该变量转换为哑变量.例如,对于性别而言,可以生成一个二元哑变量,取值1表示“女”,0表示“男”. 对于有多个取值的名义自变量,可以生成一系列二元哑变量.例如,中国内地有31个省.自治区和直辖市,可以据此生成30个哑变量.但是,如果一个

sas数据读取详解 四种读取数据方式以及数据指针的位置 、读取mess data的两个小工具、特殊的读取技巧、infile语句及其选项(dsd dlm missover truncover obs firstobs)、proc import、自定义缺失值

(The record length is the number of characters, including spaces, in a data line.) If your data lines are long, and it looks like SAS is not reading all your data, then use the LRECL= option in the INFILE statement to specify a record length at least

SAS学习经验总结分享:篇二

SAS编程语言中input语句的应用         SAS数据步的建立离不开input语句,在读入外部数据或cards语句后面的数据块时需要通过input语句定义变量.下面介绍input语句定义变量的四种方法:  SAS变量分为字符型和数值型,字符型变量加 $ 符号. input  变量1 变量2 $;/*只列出变量名,变量之间以空格分隔,只是字符类型加$符号.缺点:不能输入带空格的数据,并且字符类型数据最多8个字符.*/ input  变量1 1-X 变量2 $ X+1-Y;/*变量名用列格

【SAS BASE】处理数据集

本节内容包括:SET语句.MERGE语句.UPDATA语句.OUTPUT语句.TRANSPOSE语句和data-set选项及SAS Automatic Variables 一.SET语句(堆叠功能) 用SET语句修改数据集 DATA Friday; SET Sales;/SET 'C:\MySASLIB\trains.dat'; IF DAY='F'; Total=Propcorn+peanuts;/*建立新的变量*/ RUN; 用SET语句堆叠(stack)数据 1 DATA BOTH; 2

sas教程

http://web5.pku.edu.cn/pucssr/SASbiancheng.pdf 本教程中的主题将向您介绍 SAS Enterprise Guide.您最好依次浏览这些主题. 概述 启动项目并浏览主要窗口 向项目添加 SAS 数据 从文本文件导入数据 关于 SAS 任务 创建和修改列表报表 创建条形图 关于"查询生成器" 使用查询连接表 将计算列添加至查询 从查询生成"汇总表" 创建饼图 执行线性模型分析 将多个报表组合成单个文档 使用过程流 更多内容

sas优化技巧(2),缩减数据存储空间、length、compress、reuse、data步视图

1:控制sas数据存储空间大小 1.1:缩减字符变量存储空间 sas怎么存储字符变量? 对于赋值情况的字符型变量,变量的长度依据第一个值得长度 比如name=yi(那么name的长度即为2),然后再给其赋值name=can,那么只会读入ca 对于datalines读入或从外部数据集中读入的数据,sas默认为字符变量长度为8. 用length语句改变长度,data语句中要出现在变量前才有用. 1.2:缩减数值变量存储空间 sas怎么存储数值变量 sas默认数值变量长度为8 length改变长度,以

一些常用的SAS命令

1. 转换文本数据文件的数据步的一般形式为: data 数据集名:infile 文件名: input 变量输入设定: run: 2. 指定逻辑文件名语句的一般形式为:filename 逻辑文件名 '文件位置': 3. 查看SAS逻辑库的属性和内容的一般写法为:proc datasets lib=逻辑库名:run: 4. 查看SAS数据集的属性的一般写法为:proc contents data=数据集名:run: 5. 输出数据集的数据部分的一般写法为:proc print data=数据集名:r

第二章 导入数据到SAS | 格式规范数据读取

目录 2.1 导入数据的方法 2.2 利用导入向导读入 2.3 格式规范数据读取 2.3.1 指定原始数据位置(infile) 2.3.2 读取空格分隔原始数据(列表输入) 2.3.3 读取按列排列原始数据(列输入) 2.3.4 读取非标准格式的原始数据(格式化输入) 2.3.5 混合的输入样式(列表输入+列输入+格式输入) 2.1 导入数据的方法 将数据导入SAS的方法有很多,但可以归纳为四个基本类别,其中方法2.3是需要掌握的重点. 直接将数据输入SAS数据集 通过VIEWTABLE窗口(打