두 좌표 조건 사이의 거리에 함께 가입해야하는 두 개의 데이터 세트가 있습니다. distance_km를 계산하기 위해 Haversines formula을 사용하여 함수를 만들었지 만 소요 시간에 대한 성능 제약 조건을 다루고 있습니다.좌표 사이의 가장 가까운 거리에 두 개의 데이터 프레임을 결합하십시오.
데이터 세트 1 :
building_id | lat | lng
-------------|-------|--------
1 | 32.11 | -71.22
2 | 32.44 | -72.25
3 | 31.75 | -71.36```
데이터 집합 2 :
building_id | lat | lng
------------|-------|--------
4 | 31.65 | -73.52
5 | 32.78 | -70.21
6 | 36.15 | -72.49
각 데이터 세트는 그들 만 이상의 건물을 가지고 있는데 데이터 세트 1 만 할 때 데이터 셋이 일치하고 싶습니다 km 단위의 거리는 0.0075보다 작습니다.
나는 현재 데이터 세트 1의 각 행을 반복하고 당신은 어떤 데이터를 제공하지 않았다
dataset_2_latlng_dict = dict(zip(dataset_2.lng,dataset_2.lat))
for index, row in dataset_1.iterrows():
lat = row['lat']
lng = row['lng']
all_dist = []
final_list = []
for key, value in dataset_2_latlng_dict.iteritems():
distance = utils.distance_km(key,value,lng,lat)
all_dist.extend([distance])
final_list = sorted(all_dist, key=float)
dataset_1['min_distance'] = final_list[0]
테스트에 사용할 수있는 더 큰 데이터 세트가 있습니까? –