gpt4 book ai didi

SAS 过程时间序列 : aggregate over a specified intervale

转载 作者:行者123 更新时间:2023-12-04 19:35:24 25 4
gpt4 key购买 nike

我想使用 PROC TIMESERIES 来聚合指定时间间隔内的数据。特别是,我想在一个 60 秒的窗口内聚合,从一分钟的 30 秒开始。

我试过以下代码:

proc timeseries data=test out= test_30shift;
id datetime interval=sec60 accumulate=first setmissing=missing align=middle start = '18apr1997.00:05:30'dt end = '19apr1997.00:00:30'dt;

变种出价; 跑;

我也尝试过使用 ALIGN=BEGINNING。

结果类似于下面的代码:

proc timeseries data=test out= test_noshift;
id datetime interval=sec60 accumulate=first setmissing=missing align=beg start = '18apr1997.00:05:00'dt end = '19apr1997.00:00'dt;
var bid;
run;

如何在我想要的开始的时间间隔内实现聚合?

最佳答案

你所拥有的很接近。您需要制作 interval=sec60.31

data test;
format dt datetime19.;

do dt = "01JAN2015:00:00:00"dt to "02JAN2015:00:00:00"dt;
x = rannor(123);
output;
end;
run;

proc timeseries data=test out=test2;
id dt interval=sec60.31 accumulate=first align=beginning;
var x;
run;

enter image description here

0 - 59 的中点位于 29 秒,因此我们必须移动 31 秒才能从 MM:30 开始。

关于SAS 过程时间序列 : aggregate over a specified intervale,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29904528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com