I see, thank you!
On Wed, Sep 30, 2009 at 3:05 PM, Scott Merryman
<[email protected]> wrote:
> On Wed, Sep 30, 2009 at 12:52 PM, Dorothy Bridges <[email protected]> wrote:
>> Hi everyone: I would like to write a foreach loop that will produce a
>> separate twoway graph for each value of my string variable msa_name.
>>
>> When I enter:
>>
>> levels msa_name, local(MSA)
>> foreach i of local MSA {
>> #delimit;
>> twoway (line yvar1 xvar if msa_name==`i' & state1==1, lpattern(dash))
>> (line yvar2 xvar if msa_name==`i' & state1==1, color(navy) yaxis(2)),
>> title("`i'",color(black) placement(west) justification(left))
>> legend(off)
>> saving(`i', replace);
>> };
>>
>> Stata tells me, "end of do file," but does nothing.
>>
>> In an attempt to isolate the problem, I tried the simpler:
>>
>> foreach i of local MSA {
>> twoway line yvar1 xvar if msa_name==`i' & state1==1 & county1==1, lpattern(dash)
>> }
>>
>> which returns, "Allentown not found." The first value of msa_name is
>> "Allentown-Easton."
>>
>
> You need to bind the local `i' in double quotes. As you have written
> it, msa_name==`i' will resolve to msa_name== Allentown-Easton.
>
> Also in your code, the option -saving(`i', replace)- will not work
> with names that contain hyphens.
>
> Scott
>
> *
> * 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/