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 |
Lance Wiggains <lance.wiggains@gmail.com> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: RE: using loop to generate distributions with different means and standard deviations |

Date |
Thu, 19 May 2011 00:25:32 -0400 |

Sorry for the vagueness. Right now I'm just using simulated data for 3 different products. Here is my code: My data looks like this Week Product 1 Product 2 Product 3 1 50 45 50 2 60 50 40 3 70 55 30 4 80 50 20 5 90 45 10 6 100 50 0 tsset week gen n=_n egen max_n=max(n) ds week n max_n, not foreach var in `r(varlist)'{ tssmooth ma ms_`var'= `var', weights(1 1<2>1) } ds ms* foreach var in `r(varlist)' { gen week3_`var'=`var' if n==max_n egen max_week3_`var'=max(week3_`var') drop week3* } drop ms* ds week n max_*, not foreach var in `r(varlist)' { gen max_`var'=max_week3_ms_`var' } drop max_week* keep if n+3>=max_n ds week n max*, not foreach var in `r(varlist)'{ egen sd_`var'=sd(`var') } rename max_n maximum_n ds max_* sd* week, not foreach var in `r(varlist)'{ drop `var' } drawnorm product1, m(max_product1) sd(sd_product1) Thanks, Lance On Wed, May 18, 2011 at 1:51 PM, Sarah Edgington <sedging@ucla.edu> wrote: > Lance, > That's a different problem. From your original post I assumed you had all > the variables already created. > One strategy for writing loops is to write out the code for the first two > examples of something repetitive you want to do. Then identify the parts of > the example that remain the same across the examples. > If you post the code your trying to repeat we may be able to help you but > your current description is too vague for me to do much more than offer > vague suggestions of how to think about loops. > -Sarah > > -----Original Message----- > From: owner-statalist@hsphsun2.harvard.edu > [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Lance Wiggains > Sent: Wednesday, May 18, 2011 10:36 AM > To: statalist@hsphsun2.harvard.edu > Subject: Re: st: RE: using loop to generate distributions with different > means and standard deviations > > I've tried that but the problem is that I'm pre-calculating the means and > sd's for the variable because I'm only using the last 3-4 observations for > each variable to calculate those values. I'm doing this because I want it to > reflect the changes that happen recently. My mean function uses tssmooth, > with weights (1 1<2>), to average the last 3 weeks of sales. So if sales > were 70,80,90, and 100 I get a value of 92.5 for my mean. It also calculates > a SD for the last 3-4 observations. Then I want to plug those numbers into > the drawnorm function using a loop. Any idea about how that would work? > > Lance > > On Wed, May 18, 2011 at 1:16 PM, Sarah Edgington <sedging@ucla.edu> wrote: >> Lance, >> Try something like this: >> >> forv i=1/3 { >> drawnorm name`i', m(mean_var`i') sd(sd_var`i') >> } >> >> You'll run into problems, though, if your data actually includes the >> variable names you list since there isn't a sd_var1. >> >> -Sarah >> >> -----Original Message----- >> From: owner-statalist@hsphsun2.harvard.edu >> [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Lance >> Wiggains >> Sent: Wednesday, May 18, 2011 10:09 AM >> To: statalist@hsphsun2.harvard.edu >> Subject: st: using loop to generate distributions with different means >> and standard deviations >> >> Statalist members, >> >> I'm trying to get Stata to generate a distribution of data from >> variables in my data set. >> >> My appended data looks like this >> mean_var1=90 >> standard_deviation_var1=5 >> mean_var2=100 >> sd_var2=10 >> mean var3=110 >> sd_var3=15 >> and so on >> >> I'm need a loop that will take my variables and create the >> distributions for me. >> I've been using the drawnorm command >> drawnorm name1, m(mean_var1) sd(sd_var1) but I can't get it to >> recognize more than 1 variable at a time >> >> I want it to perform the distribution command for each pair of my > variables. >> I.e. (m_var1, sd_var1), (m_var2, sd_var2) , (m_var3, sd_var3) >> >> Thanks for your consideration, >> >> Lance >> * >> * 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/ >> > > * > * 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/ > * * 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/

**References**:**st: using loop to generate distributions with different means and standard deviations***From:*Lance Wiggains <lance.wiggains@gmail.com>

**st: RE: using loop to generate distributions with different means and standard deviations***From:*"Sarah Edgington" <sedging@ucla.edu>

**Re: st: RE: using loop to generate distributions with different means and standard deviations***From:*Lance Wiggains <lance.wiggains@gmail.com>

**RE: st: RE: using loop to generate distributions with different means and standard deviations***From:*"Sarah Edgington" <sedging@ucla.edu>

- Prev by Date:
**st: Plotting predictions from asprvalue** - Next by Date:
**Re: st: Stata cannot do math?** - Previous by thread:
**RE: st: RE: using loop to generate distributions with different means and standard deviations** - Next by thread:
**st: using loop to generate distributions with different means and standard deviations** - Index(es):