各位前辈好,
小弟的问题简单举例如下:
日期 成交时间(时/分) 价格 数量
我希望的是能够把时间补齐,然后缺的那一笔数据是同上一笔资料,
也就是希望的结果如下:
@日期和成交时间是数字!不要变成时间的格式。
日期(date) 成交时间(时/分)(dealtime) 价格(P) 数量(Q)
红字表示我补上缺的时间之后,其余的日期/价格/数量都是用前面一笔资料来补。
2013/3/6 更新,附上一部分的資料。(SAS上面截图)
从图中,举例:20050602 有3笔数据,成交时间(deal)分别有0904(9时04分) 0936 1008。0905到0935缺的时间,皆补上0904的数据。
0937到1007缺的时间,皆补上0936的数据。1008之后,1009-1345缺的时间,皆补上1008的数据。
附註:分钟是00-59,最后时刻是1345(13时45分)而不是2359,开始时刻不一定,需视第一笔数据时间为主,往后补。


Y大,抱歉,有个小问题:
日期 成交时间(时/分) 价格 数量
20130101 0900 500 2
20130101 0902 502 1
20130101 0905 498 3
20130101 0907 499 1
小弟有一个要求是,
我的日期和成交时间是数字!!! 而不用变成时间的格式,
照Y大的程序语法,小弟跑出来会变成如下:
Date prc qty time
01JAN2013 500 2 9:00
而我希望的是,
Date prc qty time
20130101 500 2 0900
所以,不知道Y大是否能再修改一下程序语法….3Q
yongyitian 发表于 2013-3-7 08:07
/* Try this, */
data Test_F;
input date yymmdd8. PRC QTY key $ deal $4. ;
然后LOG里面显示
1110 dataa2;
1111 seta1;
1112 time= hms(substr(deal,1,2),substr(deal,3,2),0);
1113 run;
NOTE: Numeric values have been converted tocharacter values at the places given by: (Line):(Column).
1112:21 1112:38
NOTE: Character values have been converted tonumeric values at the places given by: (Line):(Column).
1112:14 1112:31
NOTE: Missing values were generated as a resultof performing an operation on missing values.
Eachplace is given by: (Number of times) at (Line):(Column).
28 at 1112:10
扫码加好友,拉您进群



收藏
