🖥️ IT, 컴퓨터/🐍 Python

[Python] Haversine을 이용하여 두 경위도 좌표 간의 거리 구하기

김 홍시 2023. 8. 22.
반응형

 

 

import math

def haversine_distance(coord1, coord2):
    R = 6371.0  # Earth's radius in km

    lat1 = math.radians(coord1[0])
    lon1 = math.radians(coord1[1])
    lat2 = math.radians(coord2[0])
    lon2 = math.radians(coord2[1])

    dlat = lat2 - lat1
    dlon = lon2 - lon1

    a = math.sin(dlat / 2)**2 + math.cos(lat1) * math.cos(lat2) * math.sin(dlon / 2)**2
    c = 2 * math.atan2(math.sqrt(a), math.sqrt(1 - a))

    distance = R * c
    return distance

# Compute the distance data
distance_data = [[haversine_distance(coord1, coord2) for coord2 in lat_lon_data] for coord1 in lat_lon_data]
반응형

댓글