Мне нужно найти расстояние последовательной широты и долготы и повторить его по n строкам, но это дает мне ошибку, так как TypeError: невозможно преобразовать серию в class float
мой набор данных имеет следующий формат:
планка элат слон элон
17.5 17.6451619232709 -102.5 -102.786575076482
17.6451619232709 17.7899091408215 -102.786575076482 -103.073611759129
17.7899091408215 17.9342373469752 -103.073611759129 -103.361113499291
17.9342373469752 18.0781422239292 -103.361113499291 -103.649083720155
Код, который я пробовал, выглядит следующим образом:
import pandas as pd
df=pd.read_csv("/home/Documents/outcoords.csv", dtype=float)
from math import radians, sin, cos, acos
slat = df['slat'].tolist()
slon = df['slon'].tolist()
elat = df['elat'].tolist()
elon = df['elon'].tolist()
df['distance'] = [6371.01 * acos(sin(slat)*sin(elat) +
cos(slat)*cos(elat)*cos(slon - elon)) for x in range(df.shape[0])]
df
Он должен найти расстояние последовательных строк и отобразить расстояние.