Python For循环的数据帧替换
我有一个包含纬度、经度、总距离和运行距离列的数据框 我使用了下面的代码,它可以工作:Python For循环的数据帧替换,python,dataframe,dictionary,apply,Python,Dataframe,Dictionary,Apply,我有一个包含纬度、经度、总距离和运行距离列的数据框 我使用了下面的代码,它可以工作: summedDistance = 0 for i in range(0, len(dfLatLong)-1): fromLocation = (dfLatLong.loc[i, "Latitude"], dfLatLong.loc[i, "Longitude"]) toLocation = (dfLatLong.loc[i+1, "Latitud
summedDistance = 0
for i in range(0, len(dfLatLong)-1):
fromLocation = (dfLatLong.loc[i, "Latitude"], dfLatLong.loc[i, "Longitude"])
toLocation = (dfLatLong.loc[i+1, "Latitude"], dfLatLong.loc[i+1, "Longitude"])
summedDistance += Helper.fromtoDistance(fromLocation, toLocation)
dfLatLong.loc[i, 'runingDistance'] = Helper.fromtoDistance(fromLocation, toLocation)
dfLatLong.loc[i, 'summedDistance'] = summedDistance
(辅助函数使用纬度和经度连续行之间的测地距离)
有没有办法使用map或apply来消除For循环
谢谢使用from_lat,from_long,而不是将I合并到单个列中。您需要从1:n-1中选取纬度列,并在末尾添加一个null,然后一次性将其分配给to_lat列
所有数据对齐后,即可使用应用函数。请尝试numpy.select(),谢谢Tarik。这是一条路要走。我会试试,然后把代码贴在这里。