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: sd() does not work with forvalues


From   Richard Goldstein <richgold@ix.netcom.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: sd() does not work with forvalues
Date   Fri, 15 Jul 2011 13:31:02 -0400

my guess is that the error message refers to the line that starts "gen
nosddff`i'" rather than to the egen line -- and that line shouldn't work
outside the loop either; however, you have already calculated this value
and saved it in a variable so why not use that variable at that point?
i.e., change the line to

gen nosddff`i'=diffmedi`i'/sddf`i'

Rich

On 7/15/11 1:20 PM, Wilhelm Kluemper wrote:
> Hello STATA community,
> 
> I am trying out a code where I want to create the standard deviation
> of a var as a new var with a loop:
> 
> dfbeta
> 
> forvalues i = 3/85 {
> egen df`i'med = median(_dfbeta_`i')
> egen sddf`i'= sd(_dfbeta_`i')
> gen diffmedi`i'=_dfbeta_`i'-df`i'med
> gen absdiffmedi`i' = abs(diffmedi`i')
> gen nosddff`i'= diffmedi`i'/sd(_dfbeta_`i')
> drop if nosddff`i'>=2
> }
> 
> I keep getting this message:
> 
> unknown function sd()
> 
> It works perfectly without the forvalues loop but not within. Does
> anybody have a clue why that is and what I could do about it?
> 
> Thanks already
> 
> Wilhelm
> 
> 
*
*   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