Dear Statausers,
I'm trying to loop using foreach over 4 dta files (missions_all missions_catholic missions_protestant missions_bfbs) to shorten my code.
This is the longer version of what I want to do:
This is the shorten version I want to do but it doesn't work:
The error is the following: "missions_all.dta invalid name
May I get some help with this? Thanks in advance!
Daniel.
I'm trying to loop using foreach over 4 dta files (missions_all missions_catholic missions_protestant missions_bfbs) to shorten my code.
This is the longer version of what I want to do:
Code:
clear all global healthinfancy "/Users/perezp/Desktop/PhD/Research ideas/health infancy/Data" cd "$healthinfancy" use All_Data.dta, clear drop if longitude==. geonear id_geo latitude longitude using missions_all, neighbors(_ID _CY _CX) nearcount(1) gen lndist_all=ln(km_to_nid) rename km_to_nid dist_all drop nid geonear id_geo latitude longitude using missions_BFBS, neighbors(_ID _CY _CX) nearcount(1) gen lndist_bfbs=ln(km_to_nid) rename km_to_nid dist_bfbs drop nid geonear id_geo latitude longitude using missions_catholic, neighbors(_ID _CY _CX) nearcount(1) gen lndist_catholic=ln(km_to_nid) rename km_to_nid dist_catholic drop nid geonear id_geo latitude longitude using missions_protestant, neighbors(_ID _CY _CX) nearcount(1) gen lndist_protestant=ln(km_to_nid) rename km_to_nid dist_protestant drop nid
Code:
clear all global healthinfancy "/Users/perezp/Desktop/PhD/Research ideas/health infancy/Data" cd "$healthinfancy" use All_Data.dta, clear drop if longitude==. local filelist: dir . files "missions_*" foreach file of local filelist { geonear id_geo latitude longitude using `"`file'"', neighbors(_ID _CY _CX) nearcount(1) gen lndist_`"`file"'=ln(km_to_nid) rename km_to_nid dist_`"`file'"' drop nid }
May I get some help with this? Thanks in advance!
Daniel.
Comment