如何检索和存储从Python数据框的多个值?

我有以下数据框表示一对点之间的距离距离matrix。 我有预定的“旅行”,访问特定的点对,我需要计算的总距离。

例如,

Trip 1 = [A:B] + [B:C] + [B:D] = 6 + 5 + 8 = 19

行程2 = [A:D] + [B:E] + [C:E] = 6 + 15 + 3 = 24

import pandas graph = {'A': {'A': 0, 'B': 6, 'C': 10, 'D': 6, 'E': 7}, 'B': {'A': 10, 'B': 0, 'C': 5, 'D': 8, 'E': 15}, 'C': {'A': 40, 'B': 30, 'C': 0, 'D': 9, 'E': 3}} df = pd.DataFrame(graph).T df.to_excel('file.xls') 

我有很多“旅程”,我需要重复这个过程,然后需要将值存储在一个新的数据框,我可以导出到Excel中的行中。 我知道我可以使用df.at [A,'B']来检索Dataframe中的特定值,但是如何检索多个值,将它们相加,存储在新的Dataframe中,然后重复进行enxt旅程。

提前感谢您的帮助或指导,

我想如果你不转置,那么也许一个unpack会有帮助?

 import pandas as pd graph = {'A': {'A': 0, 'B': 6, 'C': 10, 'D': 6, 'E': 7}, 'B': {'A': 10, 'B': 0, 'C': 5, 'D': 8, 'E': 15}, 'C': {'A': 40, 'B': 30, 'C': 0, 'D': 9, 'E': 3}} df = pd.DataFrame(graph) df = df.unstack() df.index.names = ['start','finish'] # a list of tuples to represent the trip(s) trip1 = [('A','B'),('B','C'),('B','D')] trip2 = [('A','D'),('B','E'),('C','E')] trips = [trip1,trip2] my_trips = {} for trip in trips: my_trips[str(trip)] = df.loc[trip].sum() distance_df = pd.DataFrame(my_trips,index=['distance']).T distance_df distance [('A', 'B'), ('B', 'C'), ('B', 'D')] 19 [('A', 'D'), ('B', 'E'), ('C', 'E')] 24