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

# Re: st: Is there a way and a seed reason to "double" preserve data?

 From Nick Cox To statalist@hsphsun2.harvard.edu Subject Re: st: Is there a way and a seed reason to "double" preserve data? Date Mon, 4 Apr 2011 17:27:37 +0100

```Much depends on the size of dataset, your hardware set-up, which
Stata. You can waste more time trying to optimise code like this than
you will gain!

As you are concerned with speed, don't use -egen- to produce a new
variable which is a constant. Use -su, meanonly- and save r(mean). Or
get the mean in Mata.

Alternatively, do use -egen- with -by:-.

Nick

On Mon, Apr 4, 2011 at 5:21 PM, Oliver Jones
<ojones@wiwi.uni-bielefeld.de> wrote:
> Hi all,
>
> maybe the more important question is the one regarding the speed of
> preserve restore vs. save use.
> If it makes no difference then I can save my data and use it later.
>
> But if there is a improvement in execution time by using preserve and
> restore, then I would like know if there is a way to "double preserve"
> my data?
>
> I want to double preserve my data, to be able to make forecasts for
> different individuals and then save the forecasts in a mata matrix.
>
> In a two step forval construct I've got something like
>
> *********** Begin example **************
> sysuse xtline1, clear
> bysort person: gen int t = _n
> forval person = 1/3 {
>        dis _n "Starting the analysis of Person `person'" _n
>
>        preserve
>
>        keep if person == `person'
>
>        forval last_T = 360/365 { // here would follow the forecast code
>                preserve
>                egen mean_calories = mean(calories)
>                keep in L/L
>                lacal mean_person_`person'_days_`last_T' =  mean_calories[1]
>                restore
>        }
>        restore
> }
> *********** end example **************
>

*
*   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/
```