/*================================================ Program: ch2000.do Author: Steven Leung Created: Feb 2008 Purpose: Creates ch2000_counties.dta, the merged historical and longform data for the China 2000 Census. =================================================*/ #delimit; clear; set mem 150m; **************************************; * Extract data from shp files ; **************************************; global datapath ~/data/china/china2000/gis2000; /* shp2dta using $datapath/longform/CH2000_L_A.shp, database($datapath/longform/CH2000_L_A.dta) coordinates($datapath/longform/coord1.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_L_B.shp, database($datapath/longform/CH2000_L_B.dta) coordinates($datapath/longform/coord2.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_L_C.shp, database($datapath/longform/CH2000_L_C.dta) coordinates($datapath/longform/coord3.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_L_D.shp, database($datapath/longform/CH2000_L_D.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_L_E.shp, database($datapath/longform/CH2000_L_E.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_L_F.shp, database($datapath/longform/CH2000_L_F.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_L_G.shp, database($datapath/longform/CH2000_L_G.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/historical/CH_CENSUS2000.shp, database($datapath/historical/CH_CENSUS2000.dta) coordinates($datapath/historical/coord.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_A_A.shp, database($datapath/longform/CH2000_A_A.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_A_B.shp, database($datapath/longform/CH2000_A_B.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_A_C.shp, database($datapath/longform/CH2000_A_C.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_A_D.shp, database($datapath/longform/CH2000_A_D.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; shp2dta using $datapath/longform/CH2000_A_E.shp, database($datapath/longform/CH2000_A_E.dta) coordinates($datapath/longform/coord4.dta) genid(id) replace; */ **************************************; * Merge 7 parts of longform data ; **************************************; use $datapath/longform/CH2000_L_A.dta; merge id using $datapath/longform/CH2000_L_B.dta $datapath/longform/CH2000_L_C.dta $datapath/longform/CH2000_L_D.dta $datapath/longform/CH2000_L_E.dta $datapath/longform/CH2000_L_F.dta $datapath/longform/CH2000_L_G.dta $datapath/longform/CH2000_A_A.dta $datapath/longform/CH2000_A_B.dta $datapath/longform/CH2000_A_C.dta $datapath/longform/CH2000_A_D.dta $datapath/longform/CH2000_A_E.dta; tab _merge; keep if _merge==1|_merge==3; save $datapath/longform/mergetemp.dta, replace; clear; **************************************; * Renaming longform, generating merge ; **************************************; use $datapath/longform/mergetemp.dta; tostring GBCNTY, gen(GB_00); bysort GB_00: gen tot=_N; sort GBCNTY; by GBCNTY: keep if _n==1; sort GB_00; drop _merg*; save $datapath/longform/mergetemp.dta, replace; clear; **************************************; * Merging longform into historical ; **************************************; use $datapath/historical/CH_CENSUS2000.dta; tostring CNTYGB, gen(GB_00); sort GB_00; merge GB_00 using $datapath/longform/mergetemp.dta; tab _merge; keep if _merge==1|_merge==3; save $datapath/datafiles/ch2000_counties.dta, replace;