Hi Rick, Thank you for your reply. I'm looking at drug responses (y) as a function of plasma concentrations (c) using a random intercepts model. There are multiple doses given to these subjects and I'm calculating the maximum concentration from each simulated dataset and estimating what the drug effect is at each dose level. Here's a simplified version of it looks like with the loops, %do sim=1 & &N; proc mixed data=dsn_∼ model y=c; random int/subject=subject; estimate "dose 1" int 1 c &&dose1_∼ estimate "dose 2" int 1 c &&dose2_∼ run; %end; If I were to used a by statement, I'm not sure if there is any way of telling proc mixed what the current by iteration number is for me to pull out the macro variables associated with each simulated dataset. If I'm running a large number of simulations, your suggestion of calculating all the possible estimate statements would end up being too inefficient. An alternative I have done is to assume that the inputs for the maximum concentrations is fixed rather than random, I tried that and it is way faster than looping. I've actually finishing doing all the runs I need using the loops but am interested to see if I can improve on the code. Thanks!
... View more