我模擬了500次重複,並計劃使用BY處理分析NLMIXED中的每個重複項。我NLMIXED代碼如下:BY PROC NLMIXED中的處理;程序由於錯誤而停止
PROC NLMIXED DATA=MELS GCONV=1E-12 QPOINTS=11;
BY Rep;
PARMS LMFI=&LMFI.
SMFI=&SMFI.
LMRIvar=&LMRIvar.
SMRIvar=0 TO 0.15 BY 0.005;
mu = LMFI + b0i;
evar = EXP(SMFI + t0i);
MODEL Y ~ NORMAL(mu,evar);
RANDOM b0i t0i ~ NORMAL([0,0],[LMRIvar,0,SMRIvar]) SUBJECT=PersonID;
ODS OUTPUT FitStatistics=Fit2 ConvergenceStatus=Conv2 ParameterEstimates=Parm2;
RUN;
對於一些重複的,方差分量取樣要小,因此,預計一些非零數字會聚錯誤的(請注意:ODS OUTPUT語句ConvergenceStatus要求) 。但是,當我收到以下警告時,NLMIXED將退出處理過程,無論剩餘的要分析的複製數量是多少。
WARNING: The final Hessian matrix is full rank but has at least one negative eigenvalue. Second-order optimality condition violated.
ERROR: QUANEW Optimization cannot be completed.
我錯過了什麼嗎?我認爲NLMIXED可以承認該複製的錯誤,但繼續進行剩餘的複製。感謝讚賞!
最佳, 瑞安
據我所知,語法看起來很穩固。這聽起來很像數據問題。由於錯誤狀態,所產生的特徵值是負的,這是不允許的。在這種情況下,我建議從部分數據,更簡單的模型或生成的測試集開始。 – pinegulf