SAS 区间函数 INTNX 和 INTCK

INTCK/INTNX 可以对date \ datetime\time 格式的时间进行计算,可以使用SASriqi进行日历计算,可以按照间隔递增计算日期,
也可以计算日期之间的时间间隔

INTNX(interval,start-from,increment<,alignment>); 按间隔递增时间,不设置format则返回的是数值形式的时间。

interval: 指定间隔的类型;
start-from:开始时间
increment:以interval 为基准增加的量,可正可负可为零;
alignment: 可选参数,控制函数返回值相对interval时间参数的位置
BEGINNING(B):将函数返回值调整至interval的开始(函数默认的参数选项,可不表明)
MIDDLE(M):将函数返回值调整至interval 的中间
END(E):将函数的返回值调整至interval的结束
SAME(S) :将函数的返回值调整至与interval一样的时间点

interval 包含 single_unit interval 和 multi_unit interval

single-unit intervals 包含:DAY/WEEKDAY/WEEK/TENDAY/SEMIMONTH/MONTH/QTR/SEMIYEAR/YEAR

single-unit intervals for TIME: SECOND/MINUTE/HOUR.
Datetime interval: 在 在DATE间隔类型前加前缀DT;

single-unit interval 例子:

 DATA test;
date_now = '23JUL2019'd;
date1 = INTNX('MONTH',date_now,3);
date1_1 = INTNX('MONTH',date_now,3,'B');
date1_2 = INTNX('MONTH',date_now,3,'M');
date1_3 = INTNX('MONTH',date_now,3,'E');
date1_4 = INTNX('MONTH',date_now,3,'S');
FORMAT date_now date1 date1_1 date1_2 date1_3 date1_4 DATE10.;
RUN;

multi-unit interval 例子:month2,day40

  data test1;date_now = '10JUL2019'D;date1 = INTNX('MONTH2',date_now,1);date2 = INTNX('DAY20',date_now,2);FORMAT date_now date1 date2  DATE10.;RUN;

注释:如果用INTNX计算两个日期的月份(MONTH)间隔,没有alignment 参数,
不论开始日期是哪一天,SAS都将其认为是所在月份的第一天。

INTCK(interval,start-date,end-date,<‘method’>):返回2个时间之间相差的间隔(interval)数。

method: 用于指定使用离散或连续的方式计算间隔数。
COUNTINUOUS(C/CONT) :连续
DISCRETE(D/DISC) :离散
其余的参数与INTNX一样;

例子:

 DATA test2;
date_now = '10JUL2019'D;
date = '12DEC2019'D;
date1 = '19SEP2019'D;
date2 = '01AUG2019'D;
num = intck('QTR',date_now,date); *返回值为1;
num1 = intck('QTR',date_now,date1);*返回值为0,因为在同一个Q;
num3 = intck('MONTH',date_now,date1);
num4 = intck('MONTH2',date_now,date1);
num5 = intck('MONTH',date_now,date2);*即使两个时间只差一天,由于不在同一个月份,返回值为1;
FORMAT date_now date date1 date2 date10.;
RUN;

SAS 时间区间函数 INTNX 和 INTCK相关推荐

  1. SAS 时间秒 转换成多少小时,多少分钟,多少秒

    最近弄了个sas 转秒到几天几小时几分钟几秒的方法.做统计过程针对时间相减获得后的秒数转换来使用的. 来看下效果. sas 时间秒的差值,转换成多少小时,多少分钟,多少秒 我主要是封装了一个函数来对t ...

  2. SAS中的intnx函数

    INTNX(custom-interval, start-from, increment <, 'alignment'> ) start-from:开始的日期 increment:多少个间 ...

  3. sas时间和Linux时间转化,尝试在SAS中获取文件属性(文件大小,创建日期时间和上次修改日期时间)...

    我正在使用以下宏来使用SAS获取 Linux文件属性.我正在获取大小和上次修改时间的值,但没有获得"创建日期时间"的任何值.%macro FileAttribs(filename) ...

  4. SAS常用日期和时间函数简介

    SAS常用日期和时间函数有:            MDY(m,d,yr) 生成yr年m月d日的SAS日期值             YEAR(date) 由SAS日期值date得到年         ...

  5. SAS概念知识点 (复习1)

    概念部分 作业一: g) SAS语句通常以一个关键字开头.每一个SAS语句都以分号结尾.可以使用 contents过程查看SAS 数据集的描述部分.字符型变量长度最多能有 32767 字符长,并且每个 ...

  6. sas数字转日期格式_sas—日期格式及函数

    原标题:sas-日期格式及函数 SAS-日期格式及函数 前言 很久不用sas了,把日期的格式给忘了,重新学习下. 前不久,有个同事问我怎么把 date9.如"21jan2016"d ...

  7. SAS - lesson 1

    SAS training - Lesson 1.1 SAS培训- 1.1课 Table of Contents(目录) 1.数据位置 (Data location) 2.数据类型 (Data type ...

  8. SAS语法学习--函数系列

    时间日期函数 分为四大类,创建类.提取类.基于日期的运算类.节日与特殊历法类 创建类(time=函数) date()和today()----返回当前日期,功能上面基本上一致 datetime()和ti ...

  9. SAS系统从入门到放弃?不能放弃,它是数据科学家必备技能

    SAS (Statistical Analysis System)是一个模块化.集成化的大型应用软件系统. 它由数十个专用模块构成,功能包括数据访问.数据储存及管理.应用开发.图形处理.数据分析.报告 ...

最新文章

  1. 如何用Pandas处理文本数据?
  2. java和netbeans区别_如果我想只使用Java中的Eclipse和Netbeans有什么区别?
  3. maven 工程依赖了某个jar包 但还是报java.lang.ClassNotFoundException的问题
  4. IntelliJ IDEA for Mac 在eclipse(MacOS)模式下的快捷键
  5. python历史波动率_历史波动率计算(旧文)
  6. 十二. python面向对象主动调用其他类
  7. 小兔的棋盘(HDU-2067)
  8. Python map() ==>根据提供的函数对指定序列做映射
  9. linux-用户的创建
  10. php显示图片缩略图,使用ThinkPHP生成缩略图及显示的方法
  11. 【JSOI2007】【BZOJ1029】【codevs2913】建筑抢修,贪心与堆
  12. python画图为什么运行不出来_PyCharm中Matplotlib绘图不能显示UI效果的问题解决
  13. 自定义View/ViewGroup的步骤和实现
  14. 牛客网暑期ACM多校训练营7: C. Bit Compression(DFS+预处理)
  15. Deep Learning中的Attention Mechanism介绍
  16. 上传图片时,使用GDI+中重绘方式将CMYK图片转为RGB图片
  17. 教程——Wind Turbine Maintenance(Agents)
  18. 夯实Java基础系列16:一文读懂Java IO流和常见面试题
  19. vc code 必备插件Code Runner详解及问题
  20. Enterprise Architect v16

热门文章

  1. 百毒不侵的影子系统最新版热辣尝鲜
  2. 盖棺定论:君子,真小人,伪君子,小人
  3. 【ZT】事件反转!华为P30 Pro被证实有“P月”功能
  4. 不同顯示器分辨率問題
  5. LeetCode报错:runtime error: member access within null pointer of type ‘struct ListNode‘
  6. excel中的圈和叉
  7. Cannot retrieve repository metadata (repomd.xml) for repository
  8. 软工文档总结篇(一)
  9. java primitive 放在哪_primitive主数据类型的包装类
  10. 阿里云接口实现发送短信验证码