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 on April 23, and its replacement, is already up and running.

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

Re: st: findname question

From   Neil Shephard <>
Subject   Re: st: findname question
Date   Tue, 6 Apr 2010 12:50:34 +0000

On Tue, Apr 6, 2010 at 12:13 PM, Eduardo Nunez <> wrote:
> Dear statalisters,
> I had a dataset where binary variables (1/0) were presented as (1/.);
> I tried to use findname to identify those variables,
> in order to replace missing values with zeroes.
> -------------------------------------------------------------------------------------------------------
> findname, all(@==1|@==.) local(varname) varwidth(30)
> foreach varname of varlist `varname' {
>       replace `varname'=0 if `varname'==.
> }
> -------------------------------------------------------------------------------------------------------
> However it seems that the name of these variables weren't stored in a
> local macro `varname'.
> Is it that what the option local(macname) is supposed to do?

I've never used -findname- before, but you've maybe made a mistake by
using the same name for the local macro in your loop as you did for
the one you are storing the variables that match in your call to
-findname-.  Try the following...

findname, all(@==1|@==.) local(varname) varwidth(30)
di "`varname'"   // Check that there are some variables that match
your criteria!
foreach x of varlist `varname' {
      replace `x'=0 if `x'==.


"... no scientific worker has a fixed level of significance at which
from year to year, and in all circumstances, he rejects hypotheses; he
rather gives his mind to each particular case in the light of his
evidence and his ideas." - Sir Ronald A. Fisher (1956)

Email -
Website -
Photos -

*   For searches and help try:

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