Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.

Re: st: can cond() be nested (within nl)?

 From David Raitzer To "statalist@hsphsun2.harvard.edu" Subject Re: st: can cond() be nested (within nl)? Date Tue, 4 Dec 2012 00:09:53 +0800 (SGT)

```What I mean is something like this:  nl  (  y =  cond(x <={z}, cond( x <= {k},  {a}*x + {b},  {c}*x + {k}*( {a} - {c}) + {b} )   ) ,  {s}*x + {z}*( {a} - ({c}+{s})) + {b} )  , initial (a 1 b 1 c 1 k 1 s 1 z 1)

However, it doesn't seem to work for me.  Is it not possible to nest cond in this manner within nl?  Thank you for your help.

----- Original Message -----
From: Nick Cox <njcoxstata@gmail.com>
To: statalist@hsphsun2.harvard.edu
Cc:
Sent: Monday, December 3, 2012 6:39 PM
Subject: Re: st: can cond() be nested (within nl)?

It is perfectly legal to include -cond()- within the <sexp> in

nl (depvar=<sexp>) [if] [in] [weight] [, options]

if that is what you mean. But -mkspline- followed by -regress- sounds
much easier here.

On Mon, Dec 3, 2012 at 9:59 AM, David Raitzer <raitzer2002@yahoo.com> wrote:

I am trying to do a segmented linear regression with the nl function
and cond.  The intention is to have two breakpoints and 3 segments,
which means that 3 conditions are required.   Can cond be nested
within nl to apply more than 2 conditions?  If not, what is the best
way to approach such a regression when the segmentation depends upon 3
ranges of an x, rather than only 2? Thanks!
*
*   For searches and help try:
*  http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/faqs/resources/statalist-faq/
*   http://www.ats.ucla.edu/stat/stata/

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/faqs/resources/statalist-faq/
*   http://www.ats.ucla.edu/stat/stata/
```