/* 近似到每0,5,10 ... 分钟的计算方法。 这样简单点,且容易比较。*/
data have;
start = input( "16nov12:00:00:00", datetime.);
end = input( "16nov12:00:30:00", datetime.);
do CarId = 1001 to 1002;
do time = start to end by 30;
speed = ceil(ranuni(123)*100);
output;
end;
end;
format time datetime.;
drop start end ;
run;
proc sql;
create table want as
select distinct CarID, round(time, 300) as t format=datetime. ,
round(avg(speed),0.1) as meanSpeed
from have
group by CarID, round(time, 300);
quit;