2016-04-08 6 views
0

Hier zu Entfernen ist das BeispielWie Python Pandas verwenden den gleichen Namen in einem zu kombinieren, ohne dass andere Spalten

name  year  date  start opp 
0 A.J. Price 2015  2014-12-02 No MIL 
1 A.J. Price 2015  2014-12-04 No NYK 
2 A.J. Price 2015  2014-12-05 No TOR 
3 A.J. Price 2015  2014-12-08 No BRK 
4 A.J. Price 2015  2014-12-09 No TOR 
318 Aaron  2015  2014-12-15 No ATL 
319 Aaron  2015  2014-12-18 No NYK 
320 Aaron  2015  2014-12-19 No MEM 

Wie den Datenrahmen oben in etwas Hierarchie wie unter

0 A.J. Price 2015  2014-12-02 No MIL 
       2015  2014-12-04 No NYK 
       2015  2014-12-05 No TOR 
       2015  2014-12-08 No BRK 
       2015  2014-12-09 No TOR 
318 Aaron  2015  2014-12-15 No ATL 
       2015  2014-12-18 No NYK 
       2015  2014-12-19 No MEM 
+1

IIUC dann 'df.set_index ('name', append = True, inplace = True)' sollte funktionieren, siehe die [docs] (http://pandas.pydata.org/pandas-docs/version/0.18. 0/generated/pandas.DataFrame.set_index.html) – EdChum

Antwort

1

machen mit der von EdChum hier gegebenen Hilfe ist, wie es getan werden kann:

In [11]: df 
Out[11]: 
    name   year  date  start opp 
0 A.J. Price  2015 2014-12-02 No MIL 
1 A.J. Price  2015 2014-12-04 No NYK 
2 A.J. Price  2015 2014-12-05 No TOR 
3 A.J. Price  2015 2014-12-08 No BRK 
4 A.J. Price  2015 2014-12-09 No TOR 
5 Aaron   2015 2014-12-15 No ATL 
6 Aaron   2015 2014-12-18 No NYK 
7 Aaron   2015 2014-12-19 No MEM 

In [12]: df.set_index('name',inplace=True) 
In [13]: df.set_index('year',append=True, inplace=True) 

In [14]: df 
Out[14]: 
          date start opp 
name  year 
A.J. Price 2015 2014-12-02 No MIL 
      2015 2014-12-04 No NYK 
      2015 2014-12-05 No TOR 
      2015 2014-12-08 No BRK 
      2015 2014-12-09 No TOR 
Aaron  2015 2014-12-15 No ATL 
      2015 2014-12-18 No NYK 
      2015 2014-12-19 No MEM 

Update:

Während Multi-Index-Tabellen (oder pivot_tables) auszuschreiben to_csv die hierarchische Index jeder Zeile schreiben wird, in Daten, die sich wie folgt:

enter image description here

jedoch to_excel verwendet wird die Ausgabe so schreiben, indem die Reihen von hierarchischen Index verschmelzenden:

enter image description here

Wenn also die Sorge ist, wie die Multi-Index zurück, während die csv wieder zu lesen, verwenden Sie die index_col Argument der Funktion:

pd.read_csv('input.csv', index_col=[0,1]) 

Hier ist ein weiteres link, die Ihnen helfen, die csv, wie Sie zu schreiben gewollt.

+0

Dies funktioniert in der Konsole (Drucken df). Aber wenn ich diesen Datenrahmen in die CSV-Datei (df.to_csv) ausgab, sind alle wiederholten Namen immer noch in csv vorhanden. –

+0

Ich habe die Antwort aktualisiert. – Abbas

Verwandte Themen