s*****a 发帖数: 431 | 1 有个问题搞不清楚,请版上的牛人们指教,多谢!
在SAS里用proc reg做回归分析后,对residuals求mean,结果不是等于零,可是
residuals在regression里不是应该有mean zero的吗? |
s*****a 发帖数: 431 | |
b********r 发帖数: 764 | 3 为啥不是0?
贴个你的code出来?
【在 s*****a 的大作中提到】 : 有个问题搞不清楚,请版上的牛人们指教,多谢! : 在SAS里用proc reg做回归分析后,对residuals求mean,结果不是等于零,可是 : residuals在regression里不是应该有mean zero的吗?
|
s*****a 发帖数: 431 | 4 proc reg data=a;
model sr=ir;
run;
/*beta_0=0.00003056,beta_1=0.84514,sr=beta_0+beta_1*ir+residual*/
data x;
set a;
residual=sr-0.84514*ir-0.00003056;
run;
proc means data=proj.x mean;
var residual;
run;
得到的mean不是0,是哪里不对呢?多谢!
【在 b********r 的大作中提到】 : 为啥不是0? : 贴个你的code出来?
|
w*******9 发帖数: 1433 | |
b********r 发帖数: 764 | 6 哥们不用这么做吧。。residual哪需要自己算呢,直接在proc reg里output residual
就好
写了个test的小code你用你的原来raw data 来取代我code里的test set试试?
data test;
input sr ir;
cards;
1 4
23 5
3.2 13.3
;
run;
proc reg data=test;
model sr=ir ;
output out=out r=yresid;
run;quit;
proc means data=out;
var yresid;
run;
这个code得到的mean就是很小很小的值了(~0)
【在 s*****a 的大作中提到】 : proc reg data=a; : model sr=ir; : run; : /*beta_0=0.00003056,beta_1=0.84514,sr=beta_0+beta_1*ir+residual*/ : data x; : set a; : residual=sr-0.84514*ir-0.00003056; : run; : proc means data=proj.x mean; : var residual;
|
s*****a 发帖数: 431 | 7 学习了,非常感谢。我计算的mean也是非常小的数,是不是这样就算zero mean啊?
residual
【在 b********r 的大作中提到】 : 哥们不用这么做吧。。residual哪需要自己算呢,直接在proc reg里output residual : 就好 : 写了个test的小code你用你的原来raw data 来取代我code里的test set试试? : data test; : input sr ir; : cards; : 1 4 : 23 5 : 3.2 13.3 : ;
|
b********r 发帖数: 764 | 8 恩,都是E-16了,算mean zero。
【在 s*****a 的大作中提到】 : 学习了,非常感谢。我计算的mean也是非常小的数,是不是这样就算zero mean啊? : : residual
|