2017-02-06 8 views
2

Ich habe 9 Pivot-Tabellen:Python Pandas fusionieren Pivot-Tabellen

sie all diese aussehen

  2015 
NR_V  
    0 20.000000 
    1 20.405677 
    2 35.982625 
    3 50.475167 
    4 61.578472 

Ich möchte sie alle mit NR_V den Weg verschmelzen ich normale Tabellen zusammenführen würde, aber ich denke, dass Leerzeile wirft es ab.

ich versucht, dieses

dfs = [p_2009, p_2010, p_2011, p_2012, p_2013, p_2014, p_2015 ] 
merge = partial(pd.merge, on=['NR_V'], how='outer') 

result = dfs[0] 
    for df in dfs[1:]: 
    result = merge(result, df) 

Aber ich erhalte eine Fehlermeldung "KeyError: 'NR_V'".

+0

Was ist Ihr erwartetes Ergebnis in Bezug auf das Format? – sangheestyle

Antwort

2

Try pd.concat

dfs = [p_2009, p_2010, p_2011, p_2012, p_2013, p_2014, p_2015 ] 
pd.concat(dfs, axis=1) 

enter image description here


Antwort
Kommentar mit der Wenn Sie von leeren Raum loswerden wollen

pd.concat(dfs, axis=1).reset_index() 
+0

Es hat funktioniert - danke! Kennst du eine Möglichkeit, diese leere Reihe loszuwerden und NR_V nach oben zu bewegen, um mit den Jahren in einer Reihe zu sein? – jeangelj

+0

@jeangelj siehe aktualisierten Beitrag – piRSquared

+0

vielen Dank – jeangelj