BookmarkSubscribeRSS Feed
deleted_user
Not applicable
I am trying to estimate a logistic growth function with a dummy variable using proc nlmixed.

The initial model is estimated with proc nl mixed and it's a logistic growth model with two random effects. The data used cover the period 1980 - 2008

The model with the dummy uses data covering the period 1980 - 2009 and the dummy enters the dataset in the following way: IF year=2009 then year2009=1; ELSE year2009=0;
The data is trade data and 2009 is a year where the trend is abruptly disrupted downwards. (see code below)

The problem is that while the model without the dummy successfully converges when entering the dummy it fails to converge. I have tried several alternatives i.e. positioning the dummy elsewhere and I have also run models with the dummy using proc nlin for all the countries seperately to get a feeling for the initial value of the dummy parameter. Nothing works though.

Any ideas?



..........................................................................................................................
proc nlmixed data=HW_dummy tech=trureg;
parms b1=0.4281 b2= 1986.35 b3=7.8122 s2u1=0.05527 c12=-0.1918 s2u2=0.05527 s2e=0.002291 b4=56;
bounds s2u1>0, s2u2>0, s2e>0, b4>0;
num=b1+u1;
ex=exp(-(year-b2-(b4*year2009))/(b3+u2));
den=num/(1+ex);
model quantity_dig2 ~ normal(num/den,s2e);
random u1 u2~ normal ([0,0], [s2u1, c12, s2u2]) subject=partner;
predict (num/den) out=loggrowth2rand_shock;
run;
1 REPLY 1
SteveDenham
Jade | Level 19
This probably doesn't address any of your problems, but I am curious about your specification of the mean as num/den, with den=num/(1+ex). Some quick algebra gives the mean as 1+ex, as the num terms cancel. This would probably not converge as the functional form doesn't fit the data very well. What puzzles me is that you get convergence when the dummy is not included--I would have expected problems there as well.

I look forward to seeing how this works out, as I am looking to start using dummy variables in nlmixed myself.

Steve Denham

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

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
  • 1 reply
  • 1244 views
  • 0 likes
  • 2 in conversation