我有一个索引值列表,这些索引值表示我应该在地图上访问的坐标的顺序。每个索引代表(x,y)。
Out[4]: [0, 8, 11, 6 ,10, 3, 4, 2, 14, 1, 7, 12, 13, 15, 5, 9]
使用这些坐标,我生成了一个距离矩阵。我的目的是找到总行驶距离。
我设法使用iloc
来实现这一点,在这里我连续地对索引值求和。但是,由于我需要处理大量数据,因此需要一种自动化的方法。有没有更简单的方法可以做到这一点?
In[6]: dmatrix.iloc[0][8]+dmatrix.iloc[8][11]+dmatrix.iloc[11][6]+dmatrix.iloc[6][10]+dmatrix.iloc[10][3]+dmatrix.iloc[3][4]+dmatrix.iloc[4][2]+dmatrix.iloc[2][14]+dmatrix.iloc[14][1]+dmatrix.iloc[1][7]+dmatrix.iloc[7][12]+dmatrix.iloc[12][13]+dmatrix.iloc[13][15]+dmatrix.iloc[15][5]+dmatrix.iloc[5][9]+dmatrix.iloc[9][0]
答案 0 :(得分:1)
您可以创建一个循环并遍历索引列表:
sum = 0
for i in range(0, len(yourList)-1):
sum += dmatrix.iloc[yourList[i]][yourList[i+1]]
最佳