# Chapter 2 — Practice Spatial Vector Data with GeoPandas

--

GeoPandas library is to make working with spatial data in python easier that combining the capabilities of pandas and shapely, providing spatial operations in pandas and a high-level interface to multiple geometries to shapely.

# 2.1 Data Structures

GeoPandas implements two main data structures, a `GeoSeries`

and a `GeoDataFrame`

. These are subclasses of pandas Series and DataFrame, respectively.

## a) GeoSeries

A `GeoSeries`

is a vector where each entry in the vector is a set of shapes corresponding to one observation.

*Geopandas *has three basic classes of geometric objects (which are actually shapely objects): Points / Multi-Points, Lines / Multi-Lines, Polygons / Multi-Polygons.

*Examples: Points, Lines and Polygons*

`import geopandas`

from shapely.geometry import Point

s = geopandas.GeoSeries([Point(1, 1), Point(2, 2), Point(3, 3)])

s

`0 POINT (1.00000 1.00000)`

1 POINT (2.00000 2.00000)

2 POINT (3.00000 3.00000)

dtype: geometry

`from shapely.geometry import LineString`

l= geopandas.GeoSeries([LineString([Point(-77.036873,38.907192), Point(-76.612190,39.290386,), Point(-77.408456,39.412006)])])

l

`0 LINESTRING (-77.03687 38.90719, -76.61219 39.2...`

dtype: geometry

`from shapely.geometry import Polygon`

p= geopandas.GeoSeries([Polygon([(-77.036873,38.907192), (-76.612190,39.290386,), (-77.408456,39.412006)])])

p

`0 POLYGON ((-77.03687 38.90719, -76.61219 39.290...`

dtype: geometry

## b) GeoDataFrame

A `GeoDataFrame`

is a tabular data structure that contains a `GeoSeries`

.

A `GeoDataFrame`

may also contain other columns with geometrical (shapely) objects, but only one column can be the active geometry at a time. To change which column is the active geometry column, use the `GeoDataFrame.set_geometry()`

method.

*Example*:

`world = geopandas.read_file(geopandas.datasets.get_path('naturalearth_lowres'))`

world.head()

` pop_est continent name iso_a3 gdp_md_est \`

0 889953.0 Oceania Fiji FJI 5496

1 58005463.0 Africa Tanzania TZA 63177

2 603253.0…