Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Matching centroid of grids (X and Y) with actual X and Ys

    Dear Statalist Users,

    I have X and Y coordinates which are the centroids of grid cells for a specific country, Angola. I need to match each X and Y coordinates with Angola's GADM1 level region names. The first dataset below is my master dataset. Then, for the GADM1 level regions, I have the X and Y coordinates of Angola which I provided below as well. I extracted this data from its shapefile. There are 18 GADM1 level regions in Angola and I need to match population data (pop_gpw_sum) with the GADM1 level regions. However, I really do not know how to do it. I would be really happy if you can help me.

    The master dataset:

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input int(gwno year) float pop_gpw_sum str13 country long _ID double(_CX _CY xcoord ycoord)
    540 2000 5062.781 "Angola" 155161 19.25 -17.75 19.25 -17.75
    540 2000 27878.36 "Angola" 155162 19.75 -17.75 19.75 -17.75
    540 2000 3008.401 "Angola" 155163 20.25 -17.75 20.25 -17.75
    540 2000 2571.983 "Angola" 155164 20.75 -17.75 20.75 -17.75
    540 2000 3194.609 "Angola" 155165 21.25 -17.75 21.25 -17.75
    540 2000 3201.997 "Angola" 155166 21.75 -17.75 21.75 -17.75
    540 2000 5015.565 "Angola" 155167 22.25 -17.75 22.25 -17.75
    540 2000 2478.559 "Angola" 155168 22.75 -17.75 22.75 -17.75
    540 2000 7031.318 "Angola" 154430 13.75 -17.25 13.75 -17.25
    540 2000 9799.515 "Angola" 154431 14.25 -17.25 14.25 -17.25
    540 2000 25133.19 "Angola" 154432 14.75 -17.25 14.75 -17.25
    540 2000 37260.98 "Angola" 154433 15.25 -17.25 15.25 -17.25
    540 2000 56143.17 "Angola" 154434 15.75 -17.25 15.75 -17.25
    540 2000 34262.81 "Angola" 154435 16.25 -17.25 16.25 -17.25
    540 2000  15187.6 "Angola" 154436 16.75 -17.25 16.75 -17.25
    540 2000 8558.702 "Angola" 154437 17.25 -17.25 17.25 -17.25
    540 2000  4796.75 "Angola" 154438 17.75 -17.25 17.75 -17.25
    540 2000 3235.915 "Angola" 154439 18.25 -17.25 18.25 -17.25
    540 2000  2464.43 "Angola" 154440 18.75 -17.25 18.75 -17.25
    540 2000 2464.368 "Angola" 154441 19.25 -17.25 19.25 -17.25
    540 2000 2464.368 "Angola" 154442 19.75 -17.25 19.75 -17.25
    540 2000 2464.368 "Angola" 154443 20.25 -17.25 20.25 -17.25
    540 2000 2464.368 "Angola" 154444 20.75 -17.25 20.75 -17.25
    540 2000 2464.368 "Angola" 154445 21.25 -17.25 21.25 -17.25
    540 2000 2464.368 "Angola" 154446 21.75 -17.25 21.75 -17.25
    540 2000 2464.368 "Angola" 154447 22.25 -17.25 22.25 -17.25
    540 2000 5778.169 "Angola" 154448 22.75 -17.25 22.75 -17.25
    540 2000 3104.365 "Angola" 153706 11.75 -16.75 11.75 -16.75
    540 2000 7393.718 "Angola" 153707 12.25 -16.75 12.25 -16.75
    540 2000 7383.542 "Angola" 153708 12.75 -16.75 12.75 -16.75
    540 2000 9177.945 "Angola" 153709 13.25 -16.75 13.25 -16.75
    540 2000 11313.65 "Angola" 153710 13.75 -16.75 13.75 -16.75
    540 2000 11313.65 "Angola" 153711 14.25 -16.75 14.25 -16.75
    540 2000 11313.65 "Angola" 153712 14.75 -16.75 14.75 -16.75
    540 2000 11313.65 "Angola" 153713 15.25 -16.75 15.25 -16.75
    540 2000 11313.65 "Angola" 153714 15.75 -16.75 15.75 -16.75
    540 2000 11313.65 "Angola" 153715 16.25 -16.75 16.25 -16.75
    540 2000 11313.65 "Angola" 153716 16.75 -16.75 16.75 -16.75
    540 2000 7034.207 "Angola" 153717 17.25 -16.75 17.25 -16.75
    540 2000 2470.957 "Angola" 153718 17.75 -16.75 17.75 -16.75
    540 2000 2470.957 "Angola" 153719 18.25 -16.75 18.25 -16.75
    540 2000 2470.957 "Angola" 153720 18.75 -16.75 18.75 -16.75
    540 2000 2470.957 "Angola" 153721 19.25 -16.75 19.25 -16.75
    540 2000 2470.957 "Angola" 153722 19.75 -16.75 19.75 -16.75
    540 2000 2470.957 "Angola" 153723 20.25 -16.75 20.25 -16.75
    540 2000 2470.957 "Angola" 153724 20.75 -16.75 20.75 -16.75
    540 2000 2470.957 "Angola" 153725 21.25 -16.75 21.25 -16.75
    540 2000 2470.957 "Angola" 153726 21.75 -16.75 21.75 -16.75
    540 2000 6012.111 "Angola" 153727 22.25 -16.75 22.25 -16.75
    540 2000 2789.553 "Angola" 152986 11.75 -16.25 11.75 -16.25
    540 2000 7412.869 "Angola" 152987 12.25 -16.25 12.25 -16.25
    540 2000 7412.869 "Angola" 152988 12.75 -16.25 12.75 -16.25
    540 2000  8196.49 "Angola" 152989 13.25 -16.25 13.25 -16.25
    540 2000 27375.82 "Angola" 152990 13.75 -16.25 13.75 -16.25
    540 2000 15891.15 "Angola" 152991 14.25 -16.25 14.25 -16.25
    540 2000 11342.96 "Angola" 152992 14.75 -16.25 14.75 -16.25
    540 2000 12299.39 "Angola" 152993 15.25 -16.25 15.25 -16.25
    540 2000 11342.96 "Angola" 152994 15.75 -16.25 15.75 -16.25
    540 2000 11342.96 "Angola" 152995 16.25 -16.25 16.25 -16.25
    540 2000 11342.96 "Angola" 152996 16.75 -16.25 16.75 -16.25
    540 2000  9595.08 "Angola" 152997 17.25 -16.25 17.25 -16.25
    540 2000 2477.357 "Angola" 152998 17.75 -16.25 17.75 -16.25
    540 2000 2477.357 "Angola" 152999 18.25 -16.25 18.25 -16.25
    540 2000 2477.357 "Angola" 153000 18.75 -16.25 18.75 -16.25
    540 2000 2477.357 "Angola" 153001 19.25 -16.25 19.25 -16.25
    540 2000 2477.357 "Angola" 153002 19.75 -16.25 19.75 -16.25
    540 2000 2477.357 "Angola" 153003 20.25 -16.25 20.25 -16.25
    540 2000 2477.357 "Angola" 153004 20.75 -16.25 20.75 -16.25
    540 2000 2477.357 "Angola" 153005 21.25 -16.25 21.25 -16.25
    540 2000 2764.533 "Angola" 153006 21.75 -16.25 21.75 -16.25
    540 2000 1890.342 "Angola" 152262 11.75 -15.75 11.75 -15.75
    540 2000 7380.656 "Angola" 152263 12.25 -15.75 12.25 -15.75
    540 2000 7431.452 "Angola" 152264 12.75 -15.75 12.75 -15.75
    540 2000 7431.452 "Angola" 152265 13.25 -15.75 13.25 -15.75
    540 2000 37969.41 "Angola" 152266 13.75 -15.75 13.75 -15.75
    540 2000 41100.76 "Angola" 152267 14.25 -15.75 14.25 -15.75
    540 2000 34839.54 "Angola" 152268 14.75 -15.75 14.75 -15.75
    540 2000 32792.32 "Angola" 152269 15.25 -15.75 15.25 -15.75
    540 2000 11406.16 "Angola" 152270 15.75 -15.75 15.75 -15.75
    540 2000 11371.39 "Angola" 152271 16.25 -15.75 16.25 -15.75
    540 2000 11371.39 "Angola" 152272 16.75 -15.75 16.75 -15.75
    540 2000 7200.991 "Angola" 152273 17.25 -15.75 17.25 -15.75
    540 2000 2483.568 "Angola" 152274 17.75 -15.75 17.75 -15.75
    540 2000 2483.568 "Angola" 152275 18.25 -15.75 18.25 -15.75
    540 2000 2483.568 "Angola" 152276 18.75 -15.75 18.75 -15.75
    540 2000 2483.568 "Angola" 152277 19.25 -15.75 19.25 -15.75
    540 2000 2483.568 "Angola" 152278 19.75 -15.75 19.75 -15.75
    540 2000 2483.568 "Angola" 152279 20.25 -15.75 20.25 -15.75
    540 2000 2483.568 "Angola" 152280 20.75 -15.75 20.75 -15.75
    540 2000 2525.625 "Angola" 152281 21.25 -15.75 21.25 -15.75
    540 2000 5107.659 "Angola" 152282 21.75 -15.75 21.75 -15.75
    540 2000 6191.552 "Angola" 151543 12.25 -15.25 12.25 -15.25
    540 2000  7449.47 "Angola" 151544 12.75 -15.25 12.75 -15.25
    540 2000 19454.42 "Angola" 151545 13.25 -15.25 13.25 -15.25
    540 2000 41999.57 "Angola" 151546 13.75 -15.25 13.75 -15.25
    540 2000  42132.4 "Angola" 151547 14.25 -15.25 14.25 -15.25
    540 2000  42132.4 "Angola" 151548 14.75 -15.25 14.75 -15.25
    540 2000  42132.4 "Angola" 151549 15.25 -15.25 15.25 -15.25
    540 2000 37184.66 "Angola" 151550 15.75 -15.25 15.75 -15.25
    540 2000 30944.45 "Angola" 151551 16.25 -15.25 16.25 -15.25
    end
    Using dataset:

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input byte _ID double(_CX _CY) str6 COUNTRY str14 NAME_1
     1 13.881394912286341   -8.97773777844402 "Angola" "Bengo"         
     2 13.989724897828422  -12.93352685245395 "Angola" "Benguela"      
     3 17.362577188017994 -12.324940340515797 "Angola" "Bié"          
     4 12.475702246829856  -5.039150748110023 "Angola" "Cabinda"       
     5  19.51789660847637 -16.119023124812422 "Angola" "Cuando Cubango"
     6  14.94593713740182  -8.898695646347791 "Angola" "Cuanza Norte"  
     7 15.044851288086125 -10.825961359772283 "Angola" "Cuanza Sul"    
     8 15.578512635935322 -16.503493606899173 "Angola" "Cunene"        
     9 15.745656729659062 -12.569180090109645 "Angola" "Huambo"        
    10  14.95007698463079 -14.742892896433329 "Angola" "Huíla"        
    11 13.310665387920796  -8.980243038621817 "Angola" "Luanda"        
    12 19.492899471474285   -8.65213371596616 "Angola" "Lunda Norte"   
    13 20.655368641253077 -10.176175814461507 "Angola" "Lunda Sul"     
    14 16.958223340271793  -9.490075725711591 "Angola" "Malanje"       
    15 21.036007433198357 -12.877404921622444 "Angola" "Moxico"        
    16 12.727154567832413 -15.493098870735547 "Angola" "Namibe"        
    17 15.477335369721171  -7.024083776839313 "Angola" "Uíge"         
    18 13.561731457914238  -6.608485943469011 "Angola" "Zaire"         
    end

  • #2
    Hey Cansu,

    you might want to look into geoinpoly from ssc. This command helps you to match points to shapefiles.

    Best,
    Sebastian

    Comment


    • #3
      Originally posted by Sebastian Schirner View Post
      Hey Cansu,

      you might want to look into geoinpoly from ssc. This command helps you to match points to shapefiles.

      Best,
      Sebastian
      Hello,

      I actually used that and solved my problem. For those who need that:


      clear

      * First change the directory where you store in your shapefiles

      cd "\Shapefiles\Angola"

      * Unzip the shapefile

      unzipfile gadm41_AGO_shp.zip

      clear

      * Convert shapefile in stata files

      * First change the working directory where you store your unzipped shapefile

      cd "\Shapefiles\Angola"

      shp2dta using "gadm41_AGO_1.shp", data("Angola_Data.dta") coor("Angola_Coor.dta") replace

      * Use population data. Population data must also be stored in the relevant working directory

      use "Angola 1995 and 2000 Population", clear



      drop _ID



      geoinpoly _CY _CX using "Angola_Coor.dta"

      * Merge with data file

      drop _merge

      merge m:m _ID using "Angola_Data.dta"

      keep if _merge==3

      Comment

      Working...
      X