全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
10661 5
2012-08-27
    各位大神,小弟需要写一个分析债券非流动性的程序,其中一步是计算 r = -COV[ p(n), p(n+1)] , 其中p(n) = price(n+1) - price(n) ,按照id分组。请问这个程序用SAS该怎么写呢?   
    导师分配的任务,快到deadline了,急求各位大神指点!!谢谢~




截取的部分数据:
id                              price
00846UAB7                101.84
00846UAB7                101.5
00846UAB7                100.564
00846UAB7                100.564
00846UAB7                100.563999
00846UAB7                100.563599
00846UAB7                100.365799
00846UAB7                100.283
00846UAB7                100.283
00846UAB7                100.283
013817AB7                112.144
013817AB7                112.144
013817AB7                112.275
013817AB7                112.189999
013817AB7                111.424
013817AB7                111.424
013817AB7                112.024
013817AB7                111.954999
013817AB7                111.329714
013817AB7                111.3297




二维码

扫码加我 拉你入群

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

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

全部回复
2012-8-27 16:14:32

data ex;
input
id:$10.          price;
cards;
00846UAB7                101.84
00846UAB7                101.5
00846UAB7                100.564
00846UAB7                100.564
00846UAB7                100.563999
00846UAB7                100.563599
00846UAB7                100.365799
00846UAB7                100.283
00846UAB7                100.283
00846UAB7                100.283
013817AB7                112.144
013817AB7                112.144
013817AB7                112.275
013817AB7                112.189999
013817AB7                111.424
013817AB7                111.424
013817AB7                112.024
013817AB7                111.954999
013817AB7                111.329714
013817AB7                111.3297
;
run;
proc sort data=ex;
by id;
run;
data ex1;
set ex;
by id;
retain n;
p1=dif(price);
p2=lag(p1);
if first.id then do;
n=_n_;
delete;
end;
if _n_=n+1 then delete;
run;

ods listing close;
ods output cov=cov(drop=variable rename=(p1=cov));
proc corr data=ex1 cov;
by id;
var p1;
with p2;
run;
二维码

扫码加我 拉你入群

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

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

2012-8-29 11:39:23
我个人也有些想法。在分析中,删除元数据记录往往是事倍功半的做法。直接删除缺失,如同添加nomiss在proc corr里。对cov尚可,对var当有差别。京剧
二维码

扫码加我 拉你入群

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

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

2012-8-29 13:01:11
jingju11 发表于 2012-8-29 11:39
我个人也有些想法。在分析中,删除元数据记录往往是事倍功半的做法。直接删除缺失,如同添加nomiss在proc c ...
首先感谢京剧的指点,
这边从原始数据删除,主要是由于要分类计算cov;一阶差分,将第二组的第一个变量,
和上一组的最后一个变量相减了,后来一阶lag,所以才把每组前两个变量删掉;
不过说白了,也就数据步的事情,也没什么关系
二维码

扫码加我 拉你入群

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

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

2014-1-24 13:34:22
看来有人和我一样用sas。广义方差会算不,教教我
二维码

扫码加我 拉你入群

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

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

2021-10-30 15:45:22
怎么用state 算呢
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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