開始使用免費開始

對每個幾何物件套用自訂操作

現在我們已經知道如何為單一點位找出最近的國家公園,接下來把這件事套用到所有點位上。為此,我們會先撰寫一個函式,將單一點位作為引數並回傳所需結果。然後你就能用這個函式套用到所有點位。

採礦據點(mining_sites)與國家公園(national_parks)的資料集都已載入。前面練習中的單一採礦據點也已定義為 single_mine

本練習屬於課程

在 Python 中處理地理空間資料

檢視課程

練習說明

  • 建立一個 closest_national_park() 函式,執行你在上一題完成的分析:給定單一點位與所有國家公園,回傳最近的國家公園名稱。
  • 當作測試,對單一點位(single_mine)呼叫此函式並印出結果。是否與先前相同(「Virunga National park」)?
  • 將此函式套用到 mining_sites 的所有點位,並把結果指定到名為 'closest_park' 的欄位。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Define a function that returns the closest national park
def closest_national_park(geom, national_parks):
    dist = ____
    idx = ____
    closest_park = ____
    return closest_park

# Call the function on single_mine
print(closest_national_park(____, ____))

# Apply the function to all mining sites
mining_sites['closest_park'] = mining_sites.geometry.____(____, ____=____)
print(mining_sites.head())
編輯並執行程式碼