作者jokemax18 (jokercool)
看板Statistics
标题[程式] SAS 撷取资料处理
时间Mon Jun 1 22:39:34 2015
[软体程式类别]:
SAS coding
[程式问题]:
资料处理
[软体熟悉度]:
中(3个月到12月)
[问题叙述]:
各位大大好:小弟资料如下
公司 年份 月份 价值
A 2004 12 10
A 2005 01 11
. . . .
A 2013 01 15
. . . .
A 2013 12 20
我要每三年作为一期投资,譬如第一期是2004/12-2007/12,第二期是2005/12-2008/12,
第三期是2006/12-2009/12以此类推至2010/12-2013/12,
并将年份更改为第一期为1、第二期为2以此类推至第七期为7。
如问题有疑虑,我再加以补充,
劳烦各位大大提供帮忙,小弟感激涕零。
感谢下方两位热心回文,在此我再多加描述,data内容是月资料,
第一期04年12月至07年12月会有37个月份的资料,
第二期的开头是从05年12月至08年12月,一样共有37个月资料,
类似每37笔资料看成一群,但是群跟群之间会有重复两年,
如此一来,我该如何整理,有哪些语法是可以处理这种问题
我有看到下方luenchang回应的部分,新设一个变数标示,这个办法我会记住,谢谢您
我想要的资料型态如下
公司 年份 月份 价值 期数 状态
A 2004 12 10 1 0
A 2005 1 11 1 1
. . . . . .
A 2007 12 13 1 36
A 2005 12 15 2 0
A 2006 1 15.2 2 1
. . . . . .
A 2008 12 16 2 36
. . . . . .
. . . . . .
. . . . . .
A 2010 12 17 7 0
A 2011 1 17.5 7 1
. . . . . .
A 2013 12 17.9 7 36
劳烦各位大大看了这麽长的问题,在此也先跟chien553说声抱歉,
小弟先前提问不是很清楚,很感谢你的热心回应
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.115.87.58
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Statistics/M.1433169577.A.F50.html
1F:→ luenchang: I'd add a new variable instead of overwriting raw 06/02 00:21
2F:→ chien533: 完全看不懂,所以你期待新的资料长什麽样子? 06/02 06:15
※ 编辑: jokemax18 (140.115.87.8), 06/02/2015 13:06:54
3F:推 tew: 这个应该是做动能投资策略吧 06/02 13:14
4F:推 tew: 就针对月份缏号 每个月都是抓过去37个月的数据就好 06/02 13:18
感谢t大留言,我这是要看定期定额的报酬,需要将原TEJ的资料2004/12到2013/12
整理成上述型态,期跟期之间有重复,造成我不知该如何处理,有想过是转化成矩阵,
第一期从头开始往下共抓37个值,第二期从t+12(变成从2005/12为起始值),
再往下抓37个值,以此类推抓到第7期结束,
在此有小问题想问,请问您说将月份编号,但我每一期的投资期间都会有重复,
意思是05年12月在第一期的状态是12,但在第二期状态会变成0,请问您这该如何是好?
※ 编辑: jokemax18 (140.115.87.8), 06/02/2015 13:38:26
5F:推 tew: 不需要是1跟0 06/02 16:39
6F:→ tew: 就是每个月一直编下去 06/02 16:40
7F:→ tew: 然後算出每个月的值 06/02 16:40
8F:→ tew: 最後再挑出每年12月的数据即可 06/02 16:40
9F:→ tew: 之後做稳健性也能做 请 每个月都做就好 06/02 16:41
10F:→ tew: 这样就是 1-37 2-38 3-39 06/02 16:41
11F:→ tew: 想要抓你原来的 输出 1 13 25 37的值 06/02 16:42
感谢T大解释,所以我就针对A公司从04年12月+2005-2013年资料,从1号编到109号,
我去查了编号code,
data a;
set a;by 公司 年分 月份;
retain n 0;
n=n+1;
if frist.公司 then n=1;
run;
如此仍无法进行编号,会要by 公司是因为资料不只一家A公司而已,
我想询问code的部分是错在哪里呢?
※ 编辑: jokemax18 (140.115.87.58), 06/02/2015 20:53:13
12F:→ tew: 针对月份做就好 不需要一家基金一家基金做 06/03 17:02
13F:→ tew: 然後合并回去就好 06/03 17:03
感谢大大不厌其烦讲解,我已解决问题了,感谢各位解惑。
※ 编辑: jokemax18 (140.115.87.38), 06/04/2015 08:35:36