2017-07-25 96 views
1

我有兩個數據框,其中包含按日期分類的KPI。我想合併它們並使用多重索引,這樣每個KPI可以輕鬆地與其他兩個df進行比較。加入/合併兩個熊貓數據框並將列用作多指標

像這樣:

concat dataframes and swap multiindex

我試圖給每個KPI提取到一個系列,因此(DF1,DF2),然後重命名該系列採用pd.concat的關鍵參數串聯過,但是這似乎沒有工作。

任何幫助將不勝感激。

+1

您好,歡迎堆棧溢出。我首先建議閱讀https://stackoverflow.com/help/how-to-ask – ZombieChowder

回答

3

讓我們用pd.concatkeys參數,swaplevelsort_index

df1 = pd.DataFrame({'A':['A0','A1','A2'],'B':['B0','B1','B2'],'C':['C0','C1','C2']},index=pd.date_range('2017-01-01',periods=3, freq='M')) 
df2 = pd.DataFrame({'A':['A3','A4','A5'],'B':['B3','B4','B5'],'C':['C3','C4','C5']},index=pd.date_range('2017-01-01',periods=3, freq='M')) 

pd.concat([df1,df2],axis=1,keys=['df1','df2']).swaplevel(0,1,axis=1).sort_index(axis=1) 

輸出:

   A  B  C  
      df1 df2 df1 df2 df1 df2 
2017-01-31 A0 A3 B0 B3 C0 C3 
2017-02-28 A1 A4 B1 B4 C1 C4 
2017-03-31 A2 A5 B2 B5 C2 C5 
+0

欣賞你以某種方式將這些圖片轉換爲代碼的事實。 +1 –

+0

@cᴏʟᴅsᴘᴇᴇᴅ莫名其妙?我手動輸入。 :) –