全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1447 3
2017-09-09
悬赏 60 个论坛币 已解决

求助:最近在编程,想把没有交易的数据补齐,具体如下:
现有数据是2014-2017年以来所有的债券交易数据,该数据集仅包含每只债券有交易日的数据,如果某只债券在某个交易日没有交易,则该交易日的数据中,是不含这只债券的任何信息。
因此,我想把在交易日没有交易的债券数据补齐,用之前最近一个有交易的数据补齐到该无交易日,即,假设债券A在T日有过交易,下一次交易是T+6日,我想把T+1至T+5之间的交易数据用T日的实际交易数据补齐。

现有的数据格式如下:
date

code

name

Price

YTM

volum

duration

tudu

2016-03-31

150218.IB

15国开18

103.7198

3.2738

1680000.00

8.0082

74.4721

2016-03-31

160401.IB

16农发01

100.0196

2.4301

634000.00

0.7699

1.2987

2016-03-31

150210.IB

15国开10

106.5665

3.3550

625000.00

7.4693

66.4642

2016-03-31

160408.IB

16农发08

100.0991

3.3575

473000.00

8.5682

83.2349

2016-03-31

150207.IB

15国开07

102.8417

2.7050

441000.00

1.8921

5.3589

2016-03-30

150405.IB

15农发05

104.3136

3.4000

332000.00

7.6888

67.7383

2016-03-30

150220.IB

15国开20

101.7638

3.0300

322000.00

4.1675

21.1054

2016-03-30

150208.IB

15国开08

104.1179

3.0300

319000.00

3.6673

17.0548

2016-03-30

150413.IB

15农发13

100.0260

2.4498

309000.00

0.1425

0.1551

2016-03-30

150211.IB

15国开11

100.0795

2.4101

298000.00

0.1151

0.1223

2016-03-30

150414.IB

15农发14

101.4893

2.7114

262000.00

2.0449

6.0478


二维码

扫码加我 拉你入群

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

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

全部回复
2017-9-9 07:01:03
xuchao_wuxi 发表于 2017-9-9 21:42
运行了一下还是不对啊,因为债券A在T+1日没有交易时,T+1交易日的一整行数据都是缺失的。
复制代码
二维码

扫码加我 拉你入群

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

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

2017-9-9 10:09:25
proc sort data=old;
by code date;
run;
data new;
set old;
retain price_temp;
if not missing(price) or first.code then price_temp=price;
else price=price_temp;
run;
二维码

扫码加我 拉你入群

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

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

2017-9-9 21:42:20
l1i2n3i4n5g 发表于 2017-9-9 10:09
proc sort data=old;
by code date;
run;
运行了一下还是不对啊,因为债券A在T+1日没有交易时,T+1交易日的一整行数据都是缺失的。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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