# 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 geopandasfrom shapely.geometry import Points = 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 LineStringl= 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 Polygonp= 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…`