作者haoyunwhite (毛毛)
看板Statistics
标题[程式] 时间与变数撷取
时间Mon Jun 21 10:48:18 2010
[软体程式类别]:
SAS
[程式问题]:
资料处理
[软体熟悉度]:
[问题叙述]:
变数有异动之时间点(change_date)以及各月份的指标 如下面的例子
change_date 9701_data 9702_data 9703_data 9704_data 9705_data 9706_data
__________________________________________________________________________
970401 1 0 1 0 4 1
970204 1 1 2 2 0 3
想要利用异动时间点判定异动的月份撷取相对应的变数,
也就是说,第一笔资料要抓的是9704_data的值;
第二笔要抓的是9702_data的值。
更进一步要做的是取得异动时间点後面两个时间点的值,
也就是,第一笔资料要抓的是9705_data以及9706_data的值;
第二笔资料要抓的是9703_data以及9704_data的值;
资料型态变成
change_date Time_0 Time_1 Time_2
__________________________________________
970401 0 4 1
970204 1 2 2
想法
目前只有想到土法炼钢的方法
if substr(change_date,1,4)=9702 then do;
Time_0=9702_data ; Time_1=9703_data ; Time_2=9703_data ; end;
else if substr(change_date,1,4)=9706 then do;
Time_0=9706_data ; Time_1=9707_data ; Time_2=9708_data ; end;
如果只有一年的资料还好
但是如果延伸至五年,可能程式中月份重复的部分会增加很多
而且未来不一定会只抓後面2期,可能会前後的数值都要撷取,
1.想要请问如果撷取到年月(9706)可以转而撷取相对应数值的栏位(9706_data)吗
2.是否有其他的作法,得到相同的结果呢
谢谢大家有耐心看完
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.219.54
※ 编辑: haoyunwhite 来自: 114.45.219.54 (06/21 11:08)
1F:→ ASD332:请问如果你的时间是在最後的话 要怎麽取後2期? 06/21 14:28
2F:→ haoyunwhite:就只抓当期 06/21 14:59
3F:推 ASD332:你的东西用array, vname就可以解决了 不过有人提供写好的 06/21 15:23
4F:→ ASD332:就直接用吧 XD 06/21 15:23