全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1810 6
2015-02-11

程序1:

data dd;

input f e n d@@;

lgn=log(n);

cards;

1 1 240 216  1  0  100  63  2  1  60  48  2  0  210  84

;

proc genmod data=dd  order=data;

class f;

model d=e f/dist=poisson

link=log   type1 type3;

run;

程序2:

data a;

input hp path c n@@;

ln=log(n);

cards;

1 1 216 240 0 1 36 100 1 2 48 60 0 2 84 210

;

proc genmod;

class path;

model c=hp path/dist=poisson link=log offset=ln type1 type3;

run;

这两个程序说的是不是一回事 怎么结果不同呢

二维码

扫码加我 拉你入群

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

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

全部回复
2015-2-11 12:58:56
看你这几天都在弄这个poisson分布 真是辛苦
二维码

扫码加我 拉你入群

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

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

2015-2-12 16:52:01
sushe1527 发表于 2015-2-11 12:58
看你这几天都在弄这个poisson分布 真是辛苦
是呀,整的我都混乱了,不知道哪个是对的程序了,都能跑出来结果
二维码

扫码加我 拉你入群

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

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

2015-2-12 20:31:40
1、你的dd数据中63 应为36,要与a数据集要相同;
2、
proc genmod data=dd  order=data;
class f;
model d=e f/dist=poisson
link=log   type1 type3;
run;
这一poisson回归没有设offset位移变量,就是你已经假设所有的抽样单元大小相同,这种情况下就不用在model语句中设offset关键字。反之,如果抽样单元大小不同,需要加入offset位移变量。这里的抽样单元可以理解为事件发生数的分母,比较值分母不同的情况下需要加入offset位移变量
3、你的第一个程序假设分母相同,而第二个假设分母不同并进行了校正,所以结果不同。该选择那一个,请问你的分母是什么?
二维码

扫码加我 拉你入群

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

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

2015-2-14 16:34:04
天穹下 发表于 2015-2-12 20:31
1、你的dd数据中63 应为36,要与a数据集要相同;
2、
proc genmod data=dd  order=data;
data dd;
input f e n d@@;
lgn=log(n);
cards;
1 1 240 216  1  0  100  63  2  1  60  48  2  0  210  84

;
proc genmod data=dd  order=data;
class f;
model d=e f/dist=poisson
link=log   type1 type3;

run;

proc genmod data=dd;
class f;
make 'obstats' out=outdata;
model d=f/dist=poisson link=log offset=lgn
type1 type3  obstats;
run;

proc print data=outdata;
run;

data k; set outdata;
set dd;
rate=exp(xbeta);run;proc print;
run;
这是完整 的程序  这个程序有问题吗

二维码

扫码加我 拉你入群

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

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

2015-2-14 16:34:10
天穹下 发表于 2015-2-12 20:31
1、你的dd数据中63 应为36,要与a数据集要相同;
2、
proc genmod data=dd  order=data;
data dd;
input f e n d@@;
lgn=log(n);
cards;
1 1 240 216  1  0  100  63  2  1  60  48  2  0  210  84

;
proc genmod data=dd  order=data;
class f;
model d=e f/dist=poisson
link=log   type1 type3;

run;

proc genmod data=dd;
class f;
make 'obstats' out=outdata;
model d=f/dist=poisson link=log offset=lgn
type1 type3  obstats;
run;

proc print data=outdata;
run;

data k; set outdata;
set dd;
rate=exp(xbeta);run;proc print;
run;
这是完整 的程序  这个程序有问题吗

二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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