0

私は何かと戦っています。lmで指数関数を推定し、変換を使用する場合。

    leastsquares.complete=lm(log(PPPrate)~Highest+Mortrate5Y+Crate+DummieJan+DummieDec,weights=Notional)
b.completebestin= predict.lm(leastsquares.completebestout)
Forecast.completebestin= exp(b.completebestin)

重み付けされた nls を使用する場合とは異なる結果が得られます

form<-as.formula(PPPrate~exp(alfa0+alfa1*Highest+alfa2*Mortrate5Y+alfa3*Crate+alfa4*DummieJan+alfa5*DummieDec))
nlsresultshehe=nls(
  form,
  data=AllDataXX,
  start=list(alfa0=1,alfa1=1,alfa2=1,alfa3=1,alfa4=1,alfa5=1),trace=TRUE,
  weight=Notional,control=nls.control(minFactor=0.0001,maxiter = 5000))
T=summary(nlsresultshehe)$parameters
Forecast=exp(T[1,1]+Highest*T[2,1]+Mortrate5Y*T[3,1]+Crate*T[4,1]+DummieJan*T[5,1]+DummieDec*T[6,1])

重み付けスキームと関係がありますか?私はここでちょっと迷った

4

1 に答える 1

4

2 つの異なるモデルをフィッティングしています。

  • 呼び出しはlm、ログ変換された応答を通る直線に適合します。対数スケールで残差の平方和を最小化する線を見つけています。
  • 呼び出しは、nls何も変換せずに指数関数線に適合します。のスケールで残差の平方和を最小化する線を見つけています。

一般に、これらの両方のケースから同じ結果が得られることはありません。

于 2013-06-07T09:35:16.550 に答える