Notice: On March 31, it was **announced** that Statalist is moving from an email list to a **forum**. The old list will shut down on April 23, and its replacement, **statalist.org** is already up and running.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

From |
Stephen Cranney <cranney.stephen@gmail.com> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: Loop-within-loop error while looping over observations for a microsimulation |

Date |
Mon, 6 Aug 2012 15:08:11 -0400 |

But with the current syntax isn't that not a problem? If I input the numbers directly I have the following: local N = _N forvalues i = 1/`N' { forvalues j= 0/12 { replace childbirth= rbinomial(1, probabilityconceive) if childbirth== .f replace childbirth[_n+j]== .i if (childbirth==1) in `i' } } Here 1/`N' is directly computed before the loop starts, and the j values are inputted directly (with the higher bound being the number of postpartum months), so I'm still not seeing exactly how the syntax has a problem. I've closed off the space that was between childbirth and the _n, so it's not that it's accidentally recognizing the value as a weight. Thanks, Stephen On Mon, Aug 6, 2012 at 11:59 AM, Nick Cox <njcoxstata@gmail.com> wrote: > > No "seems to indicate" here: simply, subscripts are not allowed to the > left of the assignment in Stata. > > The syntax diagram shows the form -replace oldvar = exp-. Stuff can > follow that, but nothing else can be included. > > Nick > > On Mon, Aug 6, 2012 at 4:53 PM, Stephen Cranney > <cranney.stephen@gmail.com> wrote: > > Thanks for catching that; it's still giving me the "weights not > > allowed" error message though, even when I delete the extra space. > > > > I found this prior Statlist post that seems to indicate that Stata > > triggers the no weights allowed warning when the `i' is placed to the > > left of the equals sign: > > > > http://www.stata.com/statalist/archive/2006-08/msg00976.html > > > > So I changed my code to the following, but I'm still getting the "no > > weights allowed" message. > > > > local N = _N > > forvalues i = 1/`N' { > > forvalues j= 0/12 { > > replace childbirth= rbinomial(1, probabilityconceive) if childbirth== .f > > replace childbirth[_n+j]== .i if (childbirth==1) in `i' > > } > > } > > > > Best, > > > > > > > > On Mon, Aug 6, 2012 at 9:32 AM, daniel klein > > <klein.daniel.81@googlemail.com> wrote: > >> I did not follow closely, but there is a space between <childbirth> > >> and <[`i']> in your code, probably causing Stata to interpret <[`i']> > >> as some kind of weight, rather than a subscript. > >> > >> Best > >> Daniel > >> > >> -- > >> [...] > >> However, when I change the > >> monthsofpostpartum variable to a constant (in this case 12), it's > >> giving me a "weights not allowed" sign. > * > * For searches and help try: > * http://www.stata.com/help.cgi?search > * http://www.stata.com/support/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/statalist/faq * http://www.ats.ucla.edu/stat/stata/

**Follow-Ups**:**Re: st: Loop-within-loop error while looping over observations for a microsimulation***From:*Nick Cox <njcoxstata@gmail.com>

**References**:**Re: st: Loop-within-loop error while looping over observations for a microsimulation***From:*daniel klein <klein.daniel.81@googlemail.com>

**Re: st: Loop-within-loop error while looping over observations for a microsimulation***From:*Stephen Cranney <cranney.stephen@gmail.com>

**Re: st: Loop-within-loop error while looping over observations for a microsimulation***From:*Nick Cox <njcoxstata@gmail.com>

- Prev by Date:
**Re: st: How to reduce correlation between variables** - Next by Date:
**RE: st: Zero Inflated Poisson Regression** - Previous by thread:
**Re: st: Loop-within-loop error while looping over observations for a microsimulation** - Next by thread:
**Re: st: Loop-within-loop error while looping over observations for a microsimulation** - Index(es):