SAS中文论坛

标题: 请教sas循环问题 [打印本页]

作者: shiyiming    时间: 2007-9-18 02:48
标题: 请教sas循环问题
手中有24小时的数据,我要按如下形式把数据分组:例如,零点-1点, 零点20-1点20,零点40-1点40,1点-2点……22点40-23点40,23点-24点。就是以一个小时为一个固定窗口,每次把这个窗口向前移动20分钟。然后对每一个时间段内的数据做一定的分析并输出。请教高手,麻烦您指教一下大概的框架。
万分感谢!
作者: shiyiming    时间: 2007-9-19 10:14
标题: Re: 请教sas循环问题
Hi,
You can get the time span using INTNX function.
Just output the obs in the time span to a new sas dataset, on which you can perform analysis.
作者: shiyiming    时间: 2007-9-20 00:27
标题: Re: 请教sas循环问题
谢谢你,nktiger。我要处理的数据不是这些时间,而是这些时间段内的数据。所以可能 proc intnx 做不到我需要的功能。
不过还是非常感谢你的帮忙。
继续求助!
作者: shiyiming    时间: 2007-9-20 10:43
标题: Re: 请教sas循环问题
因为没有数据,所以从你给的信息
总觉得写一个宏处理一下,基本上也是不难得到结果的
作者: shiyiming    时间: 2007-9-20 11:15
标题: Re: 请教sas循环问题
呵呵,是的。但是我对macro这块实在是外行。正在自学,感觉进度很慢。所以想麻烦前辈写一个macro的大框。
其实我的数据处理很简单,就是在每个时间段中找出数据的9%和59%的quantile并输出,然后把各时间段得到的输出画在一张图上。
请前辈指点一下,谢谢啦!
作者: shiyiming    时间: 2008-1-15 17:29
标题: Re: 请教sas循环问题
%macro a(starttime,endtime,step,date);
%do i=&starttime. %to &endtime. %by &step.;
proc procedure;
where time between (=&i.,(&i.+&date.));
.....
run;
%end;
%mend a;

date 为时间间隔,比如1小时,starttime为开始的时间,endtime为结束时间,step为步长(20分钟)
循环一下,




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2