Bắt đầu ngayBắt đầu miễn phí

Áp dụng phép toán tùy chỉnh cho từng hình học

Giờ bạn đã biết cách tìm vườn quốc gia gần nhất cho một điểm đơn lẻ, hãy làm điều này cho tất cả các điểm. Đầu tiên, chúng ta sẽ viết một hàm nhận một điểm làm đối số và trả về kết quả mong muốn. Sau đó có thể dùng hàm này để áp dụng cho mọi điểm.

Các tập dữ liệu về điểm khai thác mỏ (mining_sites) và vườn quốc gia (national_parks) đã được nạp. Điểm mỏ đơn lẻ từ các bài trước đã được định nghĩa là single_mine.

Bài tập này là một phần của khóa học

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

Xem khóa học

Hướng dẫn bài tập

  • Tạo hàm closest_national_park() thực hiện phân tích bạn đã làm ở bài trước: với một điểm và toàn bộ các vườn quốc gia, trả về tên vườn quốc gia gần nhất.
  • Để kiểm tra, gọi hàm này với điểm đơn lẻ (single_mine) và in kết quả. Có giống như trước ("Virunga National park") không?
  • Áp dụng hàm này cho tất cả các điểm trong mining_sites và gán kết quả vào một cột tên 'closest_park'.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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())
Chỉnh sửa và Chạy Mã