全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1931 6
2009-08-23
TimetypepriceBidpriceaskpriceQUALIFIERSminutedaymonthyear
30:05.6Quote5030312006
30:05.6Quote51.530312006
30:26.2Quote52.530312006
30:26.2Quote5130312006
30:54.9Quote4830312006
31:20.3Quote5331312006
55:42.4Trade50.5Open[USER]55312006
55:45.3Quote50.555312006
55:45.3Quote5155312006
55:45.3Trade50.5B[ACT_FLAG1];High|Low[USER]55312006



QUALIFIERSOpen[USER] 的位置动态是变化的,我希望把从开始到这个观察值的所有记录删掉。这个表
是个开盘的每笔交易。但在研究微观交易结构时,要去除集合竞价部分。可我干了一整天。就是无法找到算法。
。因为这个开盘标志在第一个小时的纪录中位置不固定,我无法以这个标志为界将前面的纪录删除。痛苦中。。。。谢谢大家!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2009-8-23 15:52:53
if qualifiers="Open%" then delete;
或者 用where语句也是可以
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-8-23 15:57:11
谢谢这么快回帖!


我的重点是要能动态的识别这个标志,把这个观察值以上的包括缺失的纪录都删掉。如果用%可能只会删这一条。

再次谢谢



    %可以代表任何字符串,所以这样足以
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-8-23 16:00:51
sas初次用,发现无法大量灵活使用指针 真是大不灵活。而且没有回滚!哎!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-8-23 17:57:21
data a;
input Time$ type$ price Bidprice askprice QUALIFIERS$ minute day month year @@;
cards;
30:05.6 Quote . 50 . .  30 3 1 2006
30:05.6 Quote  . . 51.5 . 30 3 1 2006
30:26.2 Quote  . 52.5  . . 30 3 1 2006
30:26.2 Quote   . . 51 . 30 3 1 2006
30:54.9 Quote  . .  48  . 30 3 1 2006
31:20.3 Quote . 53 . .  31 3 1 2006
55:42.4 Trade 50.5 . .    OpenUSER 55 3 1 2006
55:45.3 Quote  . 50.5  . . 55 3 1 2006
55:45.3 Quote   . . 51 . 55 3 1 2006
55:45.3 Trade 50.5  . . B[ACT_FLAG1]High|Low[USER] 55 3 1 2006
;
run;
%let mark=OpenUSER;
data out;
do i=1 to end;
  set a point=i nobs=end;
   if QUALIFIERS="&mark" then  do k=i+1 to end;  /*需要前面数据的话改成 k= 1 to i-1*/
    set a point=k;
         output;
                 end;
                 end;
stop;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-8-23 18:06:46
先赶快感谢以下!再看!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群