Time SAS:Ceil是一个时间格式变量

Time SAS:Ceil是一个时间格式变量,time,sas,ceil,Time,Sas,Ceil,是否可以对时间格式变量(如09:31:23)使用命令ceil?我想使用ceil来设置09:32:00。我尝试使用类似于round(time,'0:01:00'T)的东西,但我想使用ceil,因为我不想进行round。使用轮将给我09:31:00。 我尝试使用ceil而不是round,但它不起作用。由于SAS时间实际上是从午夜开始的秒数,ceil将为您提供下一秒的开始时间。 要开始下一分钟,请使用INTNX函数 data _null_; t='09:31:23.12'T; next

是否可以对时间格式变量(如09:31:23)使用命令
ceil
?我想使用
ceil
来设置09:32:00。我尝试使用类似于
round(time,'0:01:00'T)
的东西,但我想使用
ceil
,因为我不想进行round。使用
将给我
09:31:00

我尝试使用
ceil
而不是
round
,但它不起作用。

由于SAS时间实际上是从午夜开始的秒数,ceil将为您提供下一秒的开始时间。 要开始下一分钟,请使用INTNX函数

data _null_;
    t='09:31:23.12'T;
    nextsecond=ceil(t);
    nextminute=intnx('minute', t, 1, 'BEGINNING');
    put t= time12.2 nextsecond= time12.2  nextminute= time12.2;
run;

LOG:   t=9:31:23.12 nextsecond=9:31:24.00 nextminute=9:32:00.00

棒 极 了我完全忘记了强大的命令intnx!谢谢你的洞察力!你知道如何把所有的时间变量
09:31:23 09:33:33 09:38:56
转换成所有相等的
09:40:00
?啊,没关系!我可以这样做:
nextminute=intnx('minute10',t,1',start')