"第二个参数无效"在SAS中使用INTNX时

时间:2015-02-20 06:23:56

标签: sas

我有一个数据集,有一个名为date的变量。看起来像#31; 31MAY13:00:00:00"它的数据类型是date。现在我想创建一个新变量,使其成为相应月份的第一天。所以对于" 31MAY13:00:00:00",它会给我" 01MAY13:00:00:00"。这是我的代码:

DATA newdata;
SET olddata;
newvariable = INTNX('month',olddate,0,"B");
RUN;

日志说:函数INTNX的参数2无效。我已经和SAS一起工作了一段时间。任何的想法?非常感谢你!

2 个答案:

答案 0 :(得分:6)

您的价值是日期时间,而不是日期。您需要在此间隔的前面添加dt,以增加日期时间值:

DATA newdata;
SET olddata;
newvariable = INTNX('dtmonth',olddate,0,"B");
RUN;

答案 1 :(得分:2)

除了@Dwal建议你可以使用" datepart"提取日期的功能,可以使用您使用过的相同公式。

newvariable = INTNX('month',datepart(olddate),0,"B");