2017-03-27 125 views
1

我有一個三列(原點,目的地,距離)的矩陣,我想用熊貓把它轉換成原點/目標矩陣,有沒有一種快速方法拉姆達,地圖)做到這一點沒有for循環?轉換(起源,目的地,距離)到距離矩陣

例如(我有):

a b 10 
a c 20 
b c 30 

我需要什麼:

a b c 
a 0 10 20 
b 10 0 30 
c 20 30 0 

回答

1

這裏是一個選項,首先通過連接原始數據幀值和複製數據幀信息起源 - 目的地交換價值,然後做一個pivot

pd.DataFrame(pd.np.concatenate([df.values, df.values[:, [1,0,2]]])).pivot(0,1,2).fillna(0) 

enter image description here