2016-07-12 27 views
1

Ich habe ein Datenframe namens df, das nach Datum indiziert ist, das ich versuche, das älteste Datum nach dem neuesten zu sortieren.Sortierung eines Datenrahmens nach Index

Ich habe versucht, beide zu verwenden:

df = df.sort(axis=1) 

und

df = df.sort_index(axis=1) 

aber wie Sie ab dem Zeitpunkt, um in dem folgenden df Schwanz sehen sich die Daten nicht in chronologischer Reihenfolge sortiert wurden.

      wood_density 
date          
2016-01-27      5.8821 
2016-01-28      5.7760 
2015-12-25       NaN 
2016-01-01       NaN 
2015-12-26       NaN 

Könnte jemand bitte Hilfe anbieten?

Vielen Dank

+0

'achse = 1' säulen; 'axis = 0' (der Standardwert) sortiert Zeilen. –

Antwort

2

Verwenden sort_index den Index zu sortieren:

In [19]: 

df = df.sort_index() 
df 
Out[19]: 
      wood_density 
date      
2015-12-25   NaN 
2015-12-26   NaN 
2016-01-01   NaN 
2016-01-27  5.8821 
2016-01-28  5.7760 

sort, die axis=0 von sort_values oder sort_index Sorten auf Zeilenbeschriftungen standardmäßig ist veraltet, so wäre es gearbeitet haben, wenn Sie ‚didn t passiere das:

In [21]: 
df.sort() 

Out[21]: 
      wood_density 
date      
2015-12-25   NaN 
2015-12-26   NaN 
2016-01-01   NaN 
2016-01-27  5.8821 
2016-01-28  5.7760 
Verwandte Themen