作者lovescent ( )
站内Statistics
标题[程式] sas跑非线性回归
时间Sun Oct 4 03:18:17 2009
------------------------------------------------------------------------
[软体程式类别]:SAS
[程式问题]:
非线性回归参数估计
[软体熟悉度]:
中(3个月到1年)
[问题叙述]:
大家好
我现在想要跑一个非线性回归 然後估计他的参数
只做一次试验的话 参数的估计值会变动很大 (每次估计出来的值离预设值忽近忽远)
所以我希望能重复试验 然後算参数的平均
看看这样会不会比较稳定一点
但是我不知道要怎麽样做才能把我的"程式"整个重复
[就是从抽样到计算出参数的部分重复做100次...]
希望有高手能帮忙一下 谢谢
[程式范例]:
data a;
do j = 1 to 100;
keep x u y;
do i = 1 to 100;
x =rand('uniform');
u = rand('normal' ,0,1);
y = 0.5 +0.8/(x-2) +u;
end;
output;
^^^^^^^ 这里少打
end;
run;
proc nlin best =30 ;
parms a = 0 b = 0 c =0 ;
model y = a + b/(x-c);
output out =p p=predict;
run;
-----------------------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.217.235.223
1F:→ tew:你的a最後有多少观察值,你有检验吗? 10/04 12:04
2F:→ lovescent:有一万 可是我是希望每一百笔资料可以跑一次回归 10/05 00:01
3F:→ lovescent:但是我不知道如何下手...Orz 10/05 00:01
4F:推 tew:你贴出来的程式 最後只会有1笔 麻烦确认一下 10/05 03:50
※ 编辑: lovescent 来自: 114.40.95.71 (10/06 22:52)
5F:→ lovescent:少打的部份已更正 谢谢你...:P 10/06 22:52
6F:→ tew:保留j变项 依照j变项进行非线性回归 此外 你要的是参数估计值 10/06 23:34
7F:→ tew:不是用output out= p=pre (这边是输出预测值) 10/06 23:34
8F:→ tew:输出估计值 通常是在proc nlin data= 这边加outest=filename 10/06 23:35
9F:→ tew:不确定 但你可以试试看 10/06 23:35