请选择 进入手机版 | 继续访问电脑版
楼主: llkknnllyytt
6810 26

poisson回归拟合度问题 [推广有奖]

llkknnllyytt 发表于 2015-5-18 17:42:10 |显示全部楼层 |坛友微信交流群
就喜欢马 发表于 2015-5-18 14:29
c应该是没用的。
比如你的模型是Ln(c)=log(n)+age;年龄分为两组(50以下=0和50以上=1)。c/n是发病率的话 ...
data example1;
input hp path c n @@;
ln=log(n);
cards;
1 1 23 158 1 2 41 655 1 3 31 1048 1 4 8 308 1 5 8 483 1 6 7 1003 1 7 1 605 1 8 1 158
2 1 14 78 2 2 32 338 2 3 19 462 2 4 4 85 2 5 1 157 2 6 2 262 2 7 7 438 2 8 2 178
3 1 7 23 3 2 13 86 3 3 15 143 3 4 0 35 3 5 0 204 3 6 0 40 3 7 0 47 3 8 1 67
4 1 4 4 4 2 7 14 4 3 4 30 4 4 5 16 4 5 0 239 4 6 1 44 4 7 1 15 4 8 1 30
5 1 1 3 5 2 2 3 5 3 4 8 5 4 1 4 5 5 1 52 5 6 0 68 5 7 1 7 5 8 2 18
;

proc genmod data=example1 order=data;
class hp path;
model c=hp path/dist=poisson
link=log offset=ln type1 type3;
run;
proc genmod data=example1 order=data;
class hp path;
make 'obstats' out=d1;
model c=path/dist=poi link=log offset=ln type1 type3 obstats;
run;
set example1;

if hp=1;
rate=exp(xbeta);
run;
proc print;
run;
data g1;
set d1;

rr=pred/exp(ln);
proc print data=g1;
run;

这是老师给的程序,我加的自己的数,但是总觉得有点运行不出来。我QQ:469691061 方便的话QQ聊下,万分感谢

使用道具

llkknnllyytt 发表于 2015-5-19 11:37:49 |显示全部楼层 |坛友微信交流群
就喜欢马 发表于 2015-5-18 14:29
c应该是没用的。
比如你的模型是Ln(c)=log(n)+age;年龄分为两组(50以下=0和50以上=1)。c/n是发病率的话 ...
还有问下RR值的可信区间能求吗

使用道具

就喜欢马 发表于 2015-5-20 17:12:46 |显示全部楼层 |坛友微信交流群
llkknnllyytt 发表于 2015-5-19 11:37
还有问下RR值的可信区间能求吗
proc genmod data=example1 order=data;
class hp(param=ref ref=first) path(param=ref ref=first);
model c=hp path/dist=poisson
link=log offset=ln type1 type3;
/*hp2、3、4、5与1的比较*/
estimate 'hp_rr21' hp -1 1 0 0 0/exp;
estimate 'hp_rr31' hp -1 0 1 0 0/exp;
estimate 'hp_rr41' hp -1 0 0 1 0/exp;
estimate 'hp_rr51' hp -1 0 0 0 1/exp;
/*path2、3、4、5、6、7、8与1的比较*/
estimate 'path_rr21' path -1 1 0 0 0 0 0 0/exp;/*path_rr21名字代表2与1对比*/
estimate 'path_rr31' path -1 0 1 0 0 0 0 0/exp;
estimate 'path_rr41' path -1 0 0 1 0 0 0 0/exp;
estimate 'path_rr51' path -1 0 0 0 1 0 0 0/exp;
estimate 'path_rr61' path -1 0 0 0 0 1 0 0/exp;
estimate 'path_rr71' path -1 0 0 0 0 0 1 0/exp;
estimate 'path_rr81' path -1 0 0 0 0 0 0 1/exp;
run; hp_rr.jpg

以hp=1为对照,hp=2的RR=1.5491,置信区间为
1.04452.2975

已有 1 人评分学术水平 热心指数 信用等级 收起 理由
mmyan2015 + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

使用道具

llkknnllyytt 发表于 2015-5-20 18:00:20 |显示全部楼层 |坛友微信交流群
就喜欢马 发表于 2015-5-20 17:12
proc genmod data=example1 order=data;
class hp(param=ref ref=first) path(param=ref ref=first);
...
我想问下β值在哪里显示

使用道具

llkknnllyytt 发表于 2015-5-20 18:05:45 |显示全部楼层 |坛友微信交流群
就喜欢马 发表于 2015-5-20 17:12
proc genmod data=example1 order=data;
class hp(param=ref ref=first) path(param=ref ref=first);
...
均值估计值就指的是RR呗

使用道具

llkknnllyytt 发表于 2015-5-20 18:17:38 |显示全部楼层 |坛友微信交流群
就喜欢马 发表于 2015-5-20 17:12
proc genmod data=example1 order=data;
class hp(param=ref ref=first) path(param=ref ref=first);
...
我现在很迷茫,有本书上说poisson用estimate语句算OR值,和95%可信区间。迷茫了
a.png

使用道具

就喜欢马 发表于 2015-5-13 13:56
(1)用Value计算卡方值;
(2)Value/DF是用来直观判断模型的拟合度,它的值越接近1越好。Deviance可以认 ...
得出的值0.052279要怎么看呢?

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 08:18