2016-11-07 10 views
2

Ich habe ein Datenframe mit einer Spalte, die ich sortieren möchte. Typing folgenden Code gibt mir eine sortierte Datenrahmen:Sortieren von Datenrahmen nach erster Spalte, Pandas

sort = tst.sort(["Mean"], ascending = False) 

       Mean 
SIMULATION   
Sim_758  1.351917 
Sim_215  1.072942 
Sim_830  0.921284 
Sim_295  0.870272 
Sim_213  0.845990 
Sim_440  0.822394 

Dieser Teil einer Funktion sein, die auf andere Datenrahmen angewendet wird. Aus diesem Grund muss ich den Datenrahmen sortieren, ohne den Spaltennamen "mean" zu erwähnen.

Gibt es eine Möglichkeit, einen Datenrahmen durch die Werte einer Spalte zu sortieren, die nur die Position der Spalte angibt?

Antwort

4

ich glaube, Sie erste Spalte von tst.columns[0] wählen kann, ist besser sort_values weil sort Rückkehr Warnung verwenden:

FutureWarning: sort (Spalten = ....) ist veraltet, verwenden sort_values ​​(von = .. ...)

sort = tst.sort_values(tst.columns[0], ascending = False) 

print (tst) 
       Mean 
SIMULATION   
Sim_213  0.845990 
Sim_758  1.351917 
Sim_830  0.921284 
Sim_295  0.870272 
Sim_215  1.072942 
Sim_830  0.921284 
Sim_295  0.870272 
Sim_440  0.822394 

print (tst.columns[0]) 
Mean 

sort = tst.sort_values(tst.columns[0], ascending = False) 
print (sort) 
       Mean 
SIMULATION   
Sim_758  1.351917 
Sim_215  1.072942 
Sim_830  0.921284 
Sim_830  0.921284 
Sim_295  0.870272 
Sim_295  0.870272 
Sim_213  0.845990 
Sim_440  0.822394 
Verwandte Themen