[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

RE: st: RE: A query about min in stata

From   "Nick Cox" <[email protected]>
To   <[email protected]>
Subject   RE: st: RE: A query about min in stata
Date   Fri, 22 Aug 2008 16:42:21 +0100

Yes, the = sign has to be there. See help on -macro-. A generic example
is `= exp' where exp is an expression to be evaluated on the fly.
Without the = sign, Stata expects a local macro name. 



The exp is `i' + 9. 

Consider now 


Without the equals sign, Stata would see in this case 1+9, 2+9, etc. but
they are not macro names, so the thing would fail. 

[email protected] 

Martin Weiss

Well, it calculates the endpoint of the rolling min calculation,
on the index "i". To make Stata calculate, you put the equal sign in
of the mathematical expression. Not sure whether it has to be there, but
want to err on the safe side here...

Ashim Kapoor

What is that = doing in that statement starting with " qui " doing. It
works. But why ?

On Fri, Aug 22, 2008 at 4:30 PM, Martin Weiss

> If that is supposed to be some kind of "rolling" estimation,
> *************
> sysuse auto , clear
> g rollingmin=.
> forv i =1/65{
> qui su mpg in `i'/`=`i'+9'
> di in red "min in `i' to `=`i'+9': " r(min) _n
> qui replace rollingmin = r(min) in `i'
> }
> l rollingmin
> *************

Ashim Kapoor

> I am trying to do the following : -
> I have a variable r. I want to create a variable m=min( r, r[_n-1],
> ... ,r[_n-9])
> I guess I can use a while loop to do this but that is quite slow. An
> alternative would be to define r0=r,r1=r[_n-1],..,r9=r[_n-9]
> and then say m=rmin ( r0 r1 ... r9).
> My question is that is there a built in way in stata to do this ? like
> say by using egen ?

*   For searches and help try:

© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index