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 |
Steve Samuels <sjsamuels@gmail.com> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: AW: RE: Stop looping when reaching a certain observation |

Date |
Sun, 18 Apr 2010 19:42:10 -0400 |

I'm sure that there are better ways, but: *************** sysuse auto, clear list mpg make in 1/8 gen index = _n if make=="Buick Opel" egen mindex = min(index) gen run_mean = sum(mpg)/_n if _n<=mindex list mpg make run_mean in 1/8 replace run_mean = run_mean[mindex] list mindex run_mean in 1 *************************** Of course you can delete the first two -list- statements Steve sysuse auto, clear gen avg = sum(kv)/_n if On Sun, Apr 18, 2010 at 5:06 PM, George Chioran <george_chioran@yahoo.com> wrote: > Thank you for the insights they are useful. > However, that does not solve my problem. I need to do the average price until a V is encountered and then stop, not just exclude the V's. > Maybe a way of achieving this would be to drop all the observations after a V is encountered, and then simply do the average. > Does anyone know how to drop all the data after a certain observation? Or maybe segment the data into different files according to the V's? > > > ________________________________ > From: Martin Weiss <martin.weiss1@gmx.de> > To: statalist@hsphsun2.harvard.edu > Sent: Sun, April 18, 2010 6:31:30 PM > Subject: st: AW: RE: Stop looping when reaching a certain observation > > > <> > > If ever you wanted Stata to stop calculating means when it sees a "V" in > "kv", you could of course condition Nick`s call as -egen ssmean = > mean(price) if kv!="V", by(ss)- > > HTH > Martin > > > -----Ursprüngliche Nachricht----- > Von: owner-statalist@hsphsun2.harvard.edu > [mailto:owner-statalist@hsphsun2.harvard.edu] Im Auftrag von Nick Cox > Gesendet: Sonntag, 18. April 2010 18:18 > An: statalist@hsphsun2.harvard.edu > Betreff: st: RE: Stop looping when reaching a certain observation > > There is absolutely no need to loop to solve your problem, of > calculating means by company. > > egen ssmean = mean(price), by(ss) > > or > > using -table- or -tabstat- > > are two of many much simpler methods. > > Nick > n.j.cox@durham.ac.uk > > George Chioran > > I am trying to figure out how to stop at certain observations while > looping through a variable. Currently I am looping through the price > variable, and making the average price sorted by company. I would like > my program to stop doing the loop when variable kv is equal to V > However, I cannot manage to stop the loop when variable kv is equal to V > (at the price of 51.92 in the first instance) > as in a sample of my database attached below. > > My program looks like this: > > local j = 1 > while `j' <= 10 { > preserve > keep if ss == `j' > su price > local `j' = _result(3) > restore > local j = `j' +1 > } > > Data base sample: > > date fondsnaam kv price ss > 16-May-08 Grontmij K 24.7 7 > 03-Jul-08 Fortis K 10.175 > 11-Jul-08 AMGK 49.73 1 > 14-Jul-08 AMGK 49.59 1 > 17-Jul-08 Arcelor V 51.92 2 > 25-Jul-08 Fugro V 41.35 6 > 11-Aug-08 Fugro K 46.69 6 > 18-Aug-08 Nutreco K 43.35 8 > 21-Aug-08 Fugro K 49.42 6 > 05-Sep-08 SmitK 48.5 9 > 08-Sep-08 ArcelorV 44.64 2 > 08-Sep-08 Fugro K 47.83 6 > > > > > * > * 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/ > -- Steven Samuels sjsamuels@gmail.com 18 Cantine's Island Saugerties NY 12477 USA Voice: 845-246-0774 Fax: 206-202-4783 * * 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: Stop looping when reaching a certain observation***From:*George Chioran <george_chioran@yahoo.com>

**st: RE: Stop looping when reaching a certain observation***From:*"Nick Cox" <n.j.cox@durham.ac.uk>

**Re: st: AW: RE: Stop looping when reaching a certain observation***From:*George Chioran <george_chioran@yahoo.com>

- Prev by Date:
**Re: st: AW: RE: -outreg2- super-rows and super-columns** - Next by Date:
**st: question on line graphs** - Previous by thread:
**AW: st: AW: RE: Stop looping when reaching a certain observation** - Next by thread:
**st: Count the number of observation of the same kind** - Index(es):