sas9命令将1年添加到现有日期

时间:2014-01-16 06:47:17

标签: date sas

我有一个包含YEARENDDATE列的数据集。如果我想改变它下面的所有行,例如

from 31DEC2010 to 31DEC2011
from 31DEC2011 to 31DEC2012
from 31DEC2012 to 31DEC2013
from 31DEC2013 to 31DEC2014
from 31OCT2010 to 31OCT2011 

等等。

我可以使用什么版本9中的SAS命令来更改现有列?

感谢并希望尽快收到您的回复。

1 个答案:

答案 0 :(得分:4)

使用 INTNX 功能:

INTNX(custom-interval, start-from, increment <, 'alignment'>)

在你的情况下,它可以是

YEARENDDATE1 = intnx("year",YEARENDDATE,1,'same');

有一个名为YEARENDDATE1的新变量,您现在可以比较YEARENDDATE和YEARENDDATE1。一旦您满意,请删除YEARENDDATE并将YEARENDDATE1重命名为YEARENDDATE。

我创建了YEARENDDATE1只是为了更安全,但如果你愿意,可以覆盖(但我不推荐)

有关INTNX的更多信息:http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000212700.htm