BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Abbas_Arkawazi
Fluorite | Level 6

hello everybody can you help me in the problem in how we can chose the intial values for parms in the proc nlmixed? is there specified method can I chose from it the intial values for the parameters

please help me, my distribution and the program is:

 

proc nlmixed data=WORK.y;
parms b0=1 b1=2 b2=2=1 a=1 b=1 s=2;
m =b0+(b1*age)+(b2*creatin)+(b3*gender2);
y=urea;
if status_u=1 then f=((a*b)*((1-exp(-exp((y-m)/s)))**(a-1))*((1+((exp(exp((y-m)/s))-1)**(a)))**(-(b+1)))) /(s*exp((-a*exp((y-m)/s))-((y-m)/s))) ;
else f= (1+(((1-exp(-exp((y-m)/s)))/(exp(-exp((y-m)/s))))**a))**-b ;
ll=log(f);
model y ~ general(ll);
run;

1 ACCEPTED SOLUTION

Accepted Solutions
Rick_SAS
SAS Super FREQ

It looks like you have a typo on the PARMS statement?
parms b0=1 b1=2 b2=2=1 a=1 b=1 s=2;

 

I know of three ways to choose initial parameters:

  1. The brute force method: Use a grid search to find initial parameter values
  2. Fit a reduced model. Sometimes your model is a generalization of a simpler model that has fewer parameters. You can estimate the simpler model and use those estimates as initial guesses for the full model.
  3. Use the method of moments for parameters that are connected to means, standard deviations, etc.

 

View solution in original post

2 REPLIES 2
Rick_SAS
SAS Super FREQ

It looks like you have a typo on the PARMS statement?
parms b0=1 b1=2 b2=2=1 a=1 b=1 s=2;

 

I know of three ways to choose initial parameters:

  1. The brute force method: Use a grid search to find initial parameter values
  2. Fit a reduced model. Sometimes your model is a generalization of a simpler model that has fewer parameters. You can estimate the simpler model and use those estimates as initial guesses for the full model.
  3. Use the method of moments for parameters that are connected to means, standard deviations, etc.

 

Abbas_Arkawazi
Fluorite | Level 6
Thank u very very much for your help, really it is a very important methods to chose initial values.

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 2 replies
  • 1507 views
  • 3 likes
  • 2 in conversation