求教proc genmod 中offset命令问题

如题所述

SAS里面可以使用PROC GENMOD来处理Poisson Regression(卜瓦松回归)。
Poisson regression主要使用在计次或计数资料分析上,属于Generalized linear model(广义线性模型)的一支,而且会令我们的Y(outcome, independent variable)背后的分布为Poisson分布。
特别是若用在列联表分析(contingency tables)时,又称为 Log-linear model。

Model简单的示意为 Log(E(Y|x))=a+bx
下面我们来看一个SAS help里面的范例
资料背景:这是Aitkin等人于1989年出版的书内提到的例子,是对于保险赔偿(insurance claims)资料建模型。
变量n是保险拥有人数量、变量c是保险赔偿的数量、变量car分作三组分别为small, medium与large、而保险拥有人的年龄分成两组(变量age)。

data insure;
input n c car $ age;
ln=log(n);
cards;
500 42 small 1
1200 37 medium 1
100 1 large 1
400 101 small 2
500 73 medium 2
300 14 large 2
;
run;
proc genmod data=insure;
class car age;
model c=car age /dist=poisson link=log offset=ln;
run;
我们所需要的指令如上述,其中class 后面是资料内的类别变量(car,age),
接着在model statement 后面先摆上想看的outcome变量(c,赔偿资料),
等号右边放入想调整个dependent variables(如此范例的car,age)。
最重要的是在model后面面的option设定,需要告诉SAS你假设的资料分布dist为?
以此为例是Poisson regression,因此输入关键字poisson;而link要设定poisson regression所对应的
log-linear model,因此关键字为log。接着还有offset要设定,offset是指针对每个观察值去设定的一个常数回归系数(constant coefficient)。
结果如下
报表第一部分会先描述使用者所做的设定,包含所设定的背后分布(poisson)、link function(Log)、Outcome(c)以及offset变量,
最后是读入的观察值笔数,以及x变量们分组的说明。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-20
这个函数是说,从指定位置,移几行,几列,从这个位置来取值,可以是取一个单元格的值,也可以是这个单元格开始算几行*几列的范围 是问那个row()/3+1 吧? 看起来你的原数据是一行行相连的,而你公式所在的表是三行填一个的,所以把新表所在行除3...