Как в обработать таблицу, используя формулу?

Есть таблица, полученная из двух таблиц через Pandas:

       newbs longitudeX1 latitudeY1   oldbs       longitudeX2        latitudeY2     BSC   LAC
0     IR021  105.98790  52.78068     NaN               NaN               NaN     NaN   NaN
1     IR048  102.19558  53.17582     NaN               NaN               NaN     NaN   NaN
2     IR066  105.48000  54.04308     NaN               NaN               NaN     NaN   NaN
0        NaN         NaN        NaN  IR055   104.2578286633  52.255474988944  396402  5244
1        NaN         NaN        NaN  IR107  104.29863944009  52.284744395507  396402  5244
...      ...         ...        ...     ...               ...               ...     ...   ...
1394     NaN         NaN        NaN  IR294  103.84349640892  52.574271985462  401257  5272
1395     NaN         NaN        NaN  IR295  105.57618886914  54.095100603944  401257  5251
1396     NaN         NaN        NaN  IR299  103.77831487935  52.420066254791  401257  5259
1397     NaN         NaN        NaN  IR290  103.82418234894   52.09637656718  401257  5272
1398     NaN         NaN        NaN  IR291  103.85440774559  52.517154218339  401257  5272

Я пытаюсь найти соседство по такой формуле: sqrt((x1-x2) * (x1-x2) + (y1-y2) * (y1-y2)). Это расстояние двух ближайших точек. Приблизительно такой результат ожидаю увидеть:

      newbs longitudeX1 latitudeY1   oldbs      longitudeX2       latitudeY2     BSC   LAC
0     IR021  105.98790  52.78068     IR055   104.2578286633  52.255474988944  396402  5244
1     IR048  102.19558  53.17582     IR299  103.77831487935  52.420066254791  401257  5259
2     IR066  105.48000  54.04308     IR290  103.82418234894   52.09637656718  401257  5272

Как мне получить такую таблицу, используя формулу? У меня уже получалось найти соседство, но через один словарь, в котором был один newbs, там уже я сравнивал координаты по формуле newbs с oldbs. А теперь у меня несколько newbs - IR021, IR048, IR066. Поэтому пришлось мне создавать две таблицы, объединить в одну, как я сделал это в первой таблице.


Ответы (1 шт):

Автор решения: Dato Dato

Вообще решил я проблему обьединением таблиц cross join, потом добавить столбец distance с формулой и сгруппировать по имени станции и взять минимум

→ Ссылка