全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2923 13
2012-03-16
以下是部分数据示例,大致格式是这样的:

Permno

group

weight1

weight2

return1

return2

return3

return4

10001

1

0.1

0.2

0.2

0.18

0.28

0.18

10002

1

0.3

0.4

0.11

0.21

0.22

0.12

10003

1

0.2

0.3

0.29

0.12

0.22

0.22

10004

1

0.4

0.1

0.17

0.02

0.09

0.231

10034

2

0.27

0.02

0.17

0.138

0.238

0.181

10045

2

0.26

0.18

0.28

0.241

0.23

0.123

10039

2

0.26

0.3

0.12

0.112

0.232

0.224

10029

2

0.16

0.2

0.12

0.012

0.049

0.234

10030

2

0.05

0.3

0.21

0.28

0.18

0.2

10020

3

0.35

0.34

0.01

0.22

0.12

0.1

10239

3

0.25

0.33

0.12

0.22

0.22

0.2

10298

3

0.4

0.33

0.13

0.1        

0.22

0.23



期望得到的结果:
根据group分的三组,weight1和weight2是权重,return1到return4是收益,分别计算每组的加权收益的和,即每组使用weight1可以得到四个加权收益的和,使用weight2也可得到四个加权收益的和。
按照以上的方法我需要每组输出8个值。该怎么编程呢?
谢谢。
二维码

扫码加我 拉你入群

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

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

全部回复
2012-3-16 10:56:38
求高手
二维码

扫码加我 拉你入群

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

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

2012-3-16 11:56:27
不知道是否会错意,仅供参考:
proc iml;
   use a;
   read all var{ return1 return2 return3 return4} into return;
   read all var {weight1}  into weight1;
   read all var {weight2} into weight2;

   newreturn1=weight1 # return;
   newreturn2=weight2 # return;
   
   create newreturn1 var{r1w1, r2w1, r3w1, r4w1} ;
   append from newreturn1;
   create newreturn2 var{r1w2, r2w2, r3w2, r4w2} ;
   append from newreturn2;
  
quit;

data b;
   merge a newreturn1 newreturn2;
run;
二维码

扫码加我 拉你入群

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

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

2012-3-16 12:17:41
复制代码
二维码

扫码加我 拉你入群

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

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

2012-3-16 20:00:29
baoaibaobao 发表于 2012-3-16 12:17
能不能编个data 步?谢谢了
二维码

扫码加我 拉你入群

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

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

2012-3-18 18:40:17
楼上有写data步的哇@@
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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