SAS中文论坛

标题: 请教筛选一段时间市场回报率的sas程序写法 [打印本页]

作者: shiyiming    时间: 2010-10-28 16:58
标题: 请教筛选一段时间市场回报率的sas程序写法
我有一个一段时间市场回报率的数据,和一些股票的时间窗口,先需要按照时间窗筛选出市场回报率数据(最后是为了计算超额收益,按照回归方法计算),具体说要做的是:对每一个“时间1”和“时间2”所构成的时间段找出相应时间段的市场回报率
请教该如何写程序(市场交易日开始日和结束日,包含了后面的所有“时间1”和“时间2”所构成的时间段),多谢!
样本数据如下:
市场交易日 市场回报率 股票代码 时间1 时间2
2009-05-08 0.00495 000005 2009-01-17 2009-04-24
2009-05-07 -0.005236 000006 2009-01-15 2009-04-22
2009-05-06 0.017984 000009 2007-11-29 2008-03-05
2009-05-05 0.008754 000021 2009-01-13 2009-04-20
2009-05-04 0.037011 000024 2008-12-21 2009-03-28
2009-04-30 0.013935 000026 2007-12-31 2008-04-06
2009-04-29 0.026565 000027 2007-12-31 2008-04-06
2009-04-28 0.007003 000028 2007-12-18 2008-03-24
2009-04-27 -0.03346 000028 2008-12-10 2009-03-17
2009-04-24 -0.005057 000033 2008-12-31 2009-04-07
2009-04-23 0.008694 000043 2008-01-02 2008-04-08
2009-04-22 -0.047504 000050 2008-01-02 2008-04-08
2009-04-21 -0.008838 000056 2008-01-14 2008-04-20
2009-04-20 0.025253 000060 2009-01-11 2009-04-18
作者: shiyiming    时间: 2010-10-28 17:28
标题: Re: 请教筛选一段时间市场回报率的sas程序写法
不知道这是不是你要的?

proc sql;
create table timelist as
select distinct date1, date2
from yourdata;

create table yourout as
select a.*, b.date, b.return
from timelist as a left join yourdata as b
on (a.date1<=b.date<=a.date2);
quit;




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