Нахождение среднего расстояния на основе широты и долготы в кадре данных, которые сопоставлены с конкретным столбцом (id) - PullRequest
0 голосов
/ 17 апреля 2019

У меня есть фрейм данных, который имеет столбцы "host_id" "Широта" "Долгота". Для хостов с более чем двумя списками, каково среднее расстояние между их списками (с использованием долготы и широты). Широта и долгота имеют значения, такие как 55,95503, 54,9563 ..

listings = pd.read_csv("listings.csv")
f_listings = listings.groupby(listings['host_id']).filter(lambda x: len(x) > 2)

Я пытаюсь использовать https://pypi.org/project/haversine/ для расчета расстояния.

f_listings = f_listings.assign(lat_long=f_listings['latitude'].map(str)+','+f_listings['longitude'].map(str))
f_listings.groupby('host_id')['lat_long']#.apply(haversine)???

ТАК, я не знаю, как применить гиперсинус или любую другую функцию, которая вычисляла бы расстояние между lat_long, сгруппированным по одному host_id.

Возможно, мне придется использовать itertools.

   g_listings= f_listings.groupby('host_id')['lat_long']
   g_listings.head()
   for combo in  itertools.combinations(g_listings, 2):
   print(combo)

Ожидаемые результаты должны быть:

host_id -------- averge_distance
123 -------------------- 10
124 -------------------- 12
и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...