Last Updated on Temmuz 3, 2025 by EDİTÖR
Geopandoyüklendikten sonra, Python dizüstü bilgisayarlarınızda bir avuç CBS fonksiyonu ile sizi destekler ve çalışmanızı jeo -uzamsal verilerle kullanır. Ama dürüst olmak gerekirse: Bu bir bildirime değmez. Ancak CBS fonksiyonlarının diğer pandalar işlevleri ile birleşimi, bu modülü senaryolarda jeo -uzamsal çalışma için yeni İsviçre ordu bıçağı haline getiriyor.
Bu makalede size kurulumu göstereceğim, temel işlevleri sunacağım ve size bir not defteri sağlayacağım (Jakob tarafından yazılmış) güzel bir “bilme” için en temel operasyonlarla.
Geopandas modülünü Python ortamınıza farklı şekillerde ekleyebilirsiniz. Bu makale için PIP yolunu kullanıyorum. Anaconda kurulumunu tercih ederseniz, bu bağlantıyı takip edebilir veya hatta kaynaktan yüklemeye çalışabilirsiniz. Birçok yol bulacaksınız Geopando web sayfası.
Bir Mac üzerinde çalışırken, önce Geos’u kullanarak yükledim demlemek ve kullanılmış pip Pandalar için geopandas uzantısını kurmak ve bağımlılıkları karşılamak. Takip etmek için Jupyter not defterine de ihtiyacınız varsa, PIP aracılığıyla da yükleyin:
brew install geos brew install spatialindex pip install jupyterlab pip install geopandas pip install rtree pip install matplotlib
Şimdi Shell’den yeni bir Jupyter not defterini ateşleyin:
jupyter notebook
Yeni bir not defteri oluşturduktan sonra, modülü pandalarla birlikte ekleriz:
import pandas as pd import geopandas as gp
Şimdi, tüm Geopandas işlevleri not defterinizde kullanılabilir ve bazılarını ile deneyeceğiz Naturalearthdata.com’dan Country-Dataset ve dünyanın tüm ofis konumları Osmdata.xyz (Büyük sahne Dr. Softener!). Komut çok kolay:
# basic usage: gp.read_file(PATH_TO_YOUR_SHAPE_FILE(s)) countries = gp.read_file("ne_10m_admin_0_countries.shp") #as I've donwloaded it to the place where I started my notebook. offices = gp.read_file("office_EPSG4326.gpkg")
Değişkenler tanımlandıktan ve dosyalar okunduktan sonra, bu “jeodataFrame” nin kafa işlevi, dizüstü bilgisayarınızı tüm öznitelik tablosunu yazdırmaya kıyasla oldukça düzenli tutan büyük bir veri kümesinin ilk girişlerini gösterecektir:
Kafa işlevi varsayılan olarak 5 satır döndürür, ancak sadece satır sayısını ekleyerek sayısını da değiştirebilirsiniz:
offices.head(2)
Şimdi her iki veri setine de katılacağız.
Her iki değişken de uzamsal bir bilgi paylaşıyor ve Ülke veri kümesiyle birlikte Ofis Özelliği Setine katılmak için mekansal birleştirmeyi (SJOIN) kullanıyoruz:
import rtree officeCountries = gp.sjoin(offices, countries)
Ama haritaları sevdiğimiz için basit bir haritalar yaratalım:
import matplotlib officeCountries.plot(markersize=0.05, figsize=(20,10))
officeCountries[officeCountries.SOVEREIGNT == 'Italy'].plot(markersize=0.1, figsize=(20,20)) #italy only
Şimdi ülke attributlarını ofis attributlarıyla birleştirdiğimiz için yeni bir veri kümesi oluşturduk. Öyleyse bilgileri yeni bir dosyada saklayalım:
officeCountries[officeCountries.SOVEREIGNT == 'Italy'].to_file(driver = 'GeoJSON', filename= "italianOffices.geojson")
QGIS’te güzel görünmüyor mu?
Bana göre geopandas, kıkogah stiline değil, verilere konsantre olmak istiyorsam kullanışlı geliyor. Bu nedenle, bazı verileri kazımanız, mekansal bilgilerle zenginleştirmeniz veya sadece QGIS veya ESRI gibi tam bir çözüm açmadan iyi bir eski şekil dosyasının öznitelik tablosunu okumak istiyorsanız, geopandas kullanışlıdır. Özellikle bazı otomatik iş akışları için bu büyük bir uzatma!
Geopandas ile ilk adımlarınızın tadını çıkarın!