我有一个数据集,有一个名为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一起工作了一段时间。任何的想法?非常感谢你!
答案 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");