Phép “spatial join”

Làm việc với Dữ liệu Không gian địa lý trong Python

Dani Arribas-Bel

Geographic Data Science Lab (University of Liverpool)

Quan hệ không gian I

Làm việc với Dữ liệu Không gian địa lý trong Python

Quan hệ không gian II

Thành phố nào nằm trong Brazil?

brazil = countries.loc[22, 'geometry']
cities[cities.within(brazil)]
               name                                       geometry
169        Brasília  POINT (-47.91799814700306 -15.78139437287899)
238  Rio de Janeiro  POINT (-43.22696665284366 -22.92307731561596)
239       São Paulo  POINT (-46.62696583905523 -23.55673372837896)

Nhưng nếu muốn biết mỗi thành phố thuộc quốc gia nào thì sao?

Làm việc với Dữ liệu Không gian địa lý trong Python

Spatial Join

SPATIAL JOIN = chuyển thuộc tính từ một lớp sang lớp khác dựa trên quan hệ không gian

Làm việc với Dữ liệu Không gian địa lý trong Python

Spatial join với GeoPandas

joined = geopandas.sjoin(cities,
                         countries[['name', 'geometry']],
                         op="within")
joined.head()
        name_left                                     geometry name_right
0    Vatican City  POINT (12.45338654497177 41.90328217996012)      Italy
1      San Marino    POINT (12.44177015780014 43.936095834768)      Italy
226          Rome    POINT (12.481312562874 41.89790148509894)      Italy
2           Vaduz  POINT (9.516669472907267 47.13372377429357)    Austria
212        Vienna  POINT (16.36469309674374 48.20196113681686)    Austria
Làm việc với Dữ liệu Không gian địa lý trong Python

Ayo berlatih!

Làm việc với Dữ liệu Không gian địa lý trong Python

Preparing Video For Download...