Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


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

Re: st: How to set a year index?


From   Barbara Engels <engels.ba@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: How to set a year index?
Date   Fri, 20 May 2011 17:39:31 +0200

thanks to both of you! luckily, I know about locals and means . and i am also more the "meanonly" economist - make it as simple as possible - and necessary.  anyhow, I tried it, it worked, thank you!
El 20.05.2011, a las 17:24, Nick Cox escribió:

> We're talking style, and long ago wise people warned de gustibus non est disputandum. 
> 
> But, sincerely...
> 
> How does the extra code make it easier to understand? The presumption is that a reader needs the clue 
> 
> local mean = r(mean) 
> 
> to realise that r(mean) contains the mean. Really??? Reminds me of those places that give you warnings about hot drinks being hot. Also, the price is confusion for anyone who has no idea what a local is. So, the target readership is: people who know about locals, but not about means. 
> 
> The -scalar- is no more necessary than the -local-. 
> 
> I agree: -meanonly- is likely to have a trivial efficiency effect here. But it's worth learning about, and telling other people about, for problems where it matters. 
> 
> Nick 
> n.j.cox@durham.ac.uk 
> 
> Oliver Jones
> 
> On 20.05.2011 16:58, Nick Cox wrote:
> 
>> The logic here is fine, but why do it this way?
>> 
>> summarize price if year == 2005, meanonly
>> gen price_index = price/r(mean)
>> 
>> Note how
>> 
>> 1. The middle macro is completely unnecessary.
> 
> I used the macro to make the code more readable/understandable.
> 
>> 
>> 2. Although it will not usually bite, you are probably losing asmidgen of precision by using a local.
> 
> Good point! I'm not sure, but I think the use of a scalar can solve the precision
> problem of the local. So my code would be
> 
> scalar base_value = r(mean)
> gen price_index = price/base_value
> 
>> 
>> 3. Specifying -meanonly- is efficient if all you need is the mean.
>> 
> 
> I'm not an expert on computing efficiency, but I wouldn't expect to
> see a difference in execution time when -summarize-ing one single
> observation.
> But I admit that it is good style to use the meanonly option.
> 
>> Small points indeed, but in computing the devil is often in the details.
>> 
>> Nick
>> n.j.cox@durham.ac.uk
> 
> *
> *   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/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index