GeoPandas – Polygon Boundary from Shapefiles Not in Latitude/Longitude Format

coordinate systemgeopandaslatitude longitudepolygonshapefile

I just downloaded the shapefiles for the County boundaries in Minnesota from [here][1].

Now I am expecting the boundaries of the Polygons/MultiPolygons to consist of latitude and longitudes (according to the metadata). Instead on loading the shapefiles I see huge numbers which don't seem like lat/long coordinates.

[![enter image description here][2]][2]

[![enter image description here][3]][3]

If you look at the last column in the tables (within the images) I am unable to understand what those numbers represent and how I can convert them to latitudes and longitudes.

The .prj file contains:

PROJCS["NAD_1983_UTM_Zone_15N",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-93.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]
Is it possible to get the shape file for the county boundaries such that the locations are mentioned in latitude/longitudes?
Could you give me some suggestions?

Best Answer

Usually, information about the CRS can be found in the metadata file.

Section 4: Coordinate System Horizontal Coordinate Scheme: Universal Transverse Mercator

UTM Zone Number: 15

Horizontal Datum: NAD83

Horizontal Units: meters

Vertical Datum: not applicable

Vertical Units: Not Applicable

Depth Datum: not applicable

Depth Units: Not Applicable

As well as when reading the shapefile with GeoPandas, one can get the EPSG:26915.

import geopandas as gpd

zipfile = 'D:/TESTING/shp_bdry_counties_in_minnesota.zip!mn_county_boundaries_500.shp'
# url = 'https://resources.gisdata.mn.gov/pub/gdrs/data/pub/us_mn_state_dnr/bdry_counties_in_minnesota/shp_bdry_counties_in_minnesota.zip'

gdf = gpd.read_file(zipfile)

print(gdf.crs) #epsg:26915

And then reproject with gdf = gdf.to_crs("EPSG:4326") if needed.

Related Question