2017-10-18 47 views
0

我得到了兩個數據幀,並希望通過使用國家作爲索引來合併它們兩個。以字符串連接兩個數據幀作爲索引

我dataframes(頭)如下所示:

人類發展指數

  CPI-2016 Region 
Country   
New Zealand 90 AP 
Denmark  90 WE/EU 
Finland  89 WE/EU 
Sweden   88 WE/EU 
Switzerland 86 WE/EU 

腐敗

   HDI-2015 
Country  
Afghanistan 0.479 
Albania 0.764 
Algeria 0.745 
Andorra 0.858 
Angola 0.533 

級聯的一個:result = pandas.concat([hdi, cpi])

  CPI-2016 HDI-2015 Region 
Country   
Afghanistan NaN   0.479 NaN 
Albania  NaN   0.764 NaN 
Algeria  NaN   0.745 NaN 
Andorra  NaN   0.858 NaN 
Angola  NaN   0.533 NaN 

,最後有cpi和region的條目,但沒有hdi。此外,數據中的國家數量是行數的兩倍。

+0

看看在連接操作的熊貓文檔中:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.join.html –

+0

通過索引加入熊貓可能 – Rockbar

+0

忘記'axis = 1'像'result = pandas.concat([hdi,cpi],axis = 1)' – jezrael

回答

0

你可以用merge()做到這一點:

hdi.index = hdi.index.str.strip() 
pd.merge(hdi, cpi, left_index=True, right_index=True) 
+0

https://stackoverflow.com/questions/46809710/concatenate-two-data-frames-with-string-as-index#comment80567494_46809710 – jezrael

+0

謝謝@jezrael完全錯過了評論:) – zipa

0

human_development_index.set_index( '國家')加入(corruption.set_index( '國家'),在= '國家')