SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 790|回复: 4
打印 上一主题 下一主题

如何将分组回归得到的参数制成表输出,谢谢高手!

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2010-6-6 12:13:36 | 只看该作者

如何将分组回归得到的参数制成表输出,谢谢高手!

我有一个数据库,里面很多组股票的数据,而我想根据代号分组,每组做一次回归,
模型就是,成交量=a1+a2*开盘价  (即 [color=#0040FF:6nlprnyn]Vol=a1+a2*Price[/color:6nlprnyn])

[color=#FF0000:6nlprnyn]  代号    开盘价  成交量
   ID          Price      Vol[/color:6nlprnyn]
C600000       10        567
C600000       12        456
C600000       14        123
C600000       12        164
C600000       15        678

C600008       10        567
C600008       12        456
C600008       14        123
C600008       12        164

C600030       15        678
C600030       10        567
C600030       12        456
C600030       14        123

C600134       12        164
C600134       15        678
C600134       10        567
C600134       12        456
..........       ....       ....

做完回归后,将“ id a2  a2对应的p值   t值 ”输出成另外一张表,举个例子输出结果类似于这样
  [color=#FF0000:6nlprnyn] ID        a2           p值      t值[/color:6nlprnyn]
C600000       1.3        0.0001    3.678
C600008       1.6        0.0012    4.567
C600030       0.5        0.0145    1.345
C600134       0.7        0.0020    3.242
..........       ....        ........    ......

上面的只是我举得例子,而实际数据库量非常大,所以不可能一遍一遍做回归,但我刚开始学SAS,也尝试编了好几天都没有成功,哪位高手能帮帮我,真的非常非常谢谢你了!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2010-6-7 21:05:04 | 只看该作者

Re: 如何将分组回归得到的参数制成表输出,谢谢高手!

[code:39ng14a6]PROC SORT; BY ID; RUN; *You got to sort first;
PROC REG OUTEST = B TABLEOUT; *TABLEOUT adds T&P to the output dataset;
        BY ID;
        MODEL Vol = Price;
RUN;
QUIT;

PROC TRANSPOSE DATA = B OUT =C(KEEP = ID PARMS T PVALUE RENAME = (PARMS = a2 PVALUE = p)) ;
        ID _TYPE_;        BY ID;
        VAR PRICE;
RUN;[/code:39ng14a6]

顺便说一句:REG的输出功能是独一无二的强大。考虑了使用者的实际功用。BY分割数据但是输出数据依然被串接起来。很方便。在实际分析中我从不使用REG,感觉它是一个理论很单纯功能很丰富主要为银行所使用的过程。另外一个类似的过程是logistic。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2010-6-8 11:37:25 | 只看该作者

Re: 如何将分组回归得到的参数制成表输出,谢谢高手!

also can be done by :

ods output parameterestimates=estimate;
proc reg data=stock;
model vol=price;
by id;
run;
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2010-6-8 14:19:33 | 只看该作者

Re: 如何将分组回归得到的参数制成表输出,谢谢高手!

<!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D --> yes, code had be run!!!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2010-6-14 11:22:21 | 只看该作者

Re: 如何将分组回归得到的参数制成表输出,谢谢高手!

好些天没来了,非常感谢jingju11和gzgoon的解答!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-4 05:15 , Processed in 0.090252 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表