So sortieren Sie eine DataFrame-Tabelle mit der Methode "sort_values".
Es gibt auch eine sort_index-Methode, die jedoch nicht empfohlen wird. FutureWarning: by argument to sort_index is deprecated, please use .sort_values(by=...)
** ▼ Grundlegende Syntax **
df.sort_values(by=['A'])
└ "df": Tabellendaten
└ "by = []": Spalte / Zeile, die die Grundlage für die Sortierung bildet * Erforderlich *
└ "A": Spalten- / Zeilenname
Möglichkeit | Inhalt |
---|---|
axis=0 | Die Achse ist eine Spalte. Standard. Optional |
axis=1 | Machen Sie die Achse zu einer Reihe. |
by=['A'] | Achsenlinie/Spaltenname. Verpflichtend |
assending=True | Aufsteigende Sorte. Standard. Optional |
assending=False | Absteigende Sorte. |
na_position='first' | Bewegen Sie NaN nach oben. |
na_position='last' | Bewegen Sie NaN nach unten. Standard. Optional |
inplace=False | Nicht überschreiben. Standard. Optional |
inplace=True | Überschreiben. |
Eine Tabelle erstellen
import pandas as pd
import numpy as np
row0 = [0, 0, 'a', 'Ah', 'einer']
row1 = [2, 2, 'c', 'U.', 'drei']
row2 = [4, np.nan,'e', 'Oh', 'Samurai']
row3 = [1, 1,'b', 'ich', 'Zwei']
row4 = [3, 3,'d', 'e', '肆']
row5 = [5, 5,'e', 'Oh', 'Samurai']
df = pd.DataFrame([row0,row1,row2,row3,row4,row5])
df.columns = ['col0', 'col1', 'col2' ,'col3', 'col4']
df.index = ['row0', 'row1', 'row2', 'row3', 'row4', 'row5']
df
Importieren Sie numpy und verwenden Sie "np.nan", um den fehlenden Wert NaN zu verwenden.
Geben Sie den Spaltennamen, der der Sortierstandard sein soll, in "A" ein.
Der Standardwert ist "ascending = True" (optional).
Aufsteigende Sorte
df.sort_values(by=['col0'])
Sortiert in aufsteigender Reihenfolge nach dem Element in Spalte col0.
Sie können Alphabete und Flat Kana auf die gleiche Weise sortieren.
Sortieren Sie in absteigender Reihenfolge nach dem Spaltennamen "A".
Absteigende Sorte
df.sort_values(by=['col0'], ascending=False)
・ Na_position = 'last'
└ Standard (optional)
└ Gehen Sie nach unten
・ Na_position = 'first'
└ Gehen Sie nach oben
Spalten mit NaN sortieren (Standard)
df.sort_values(by=['col1'])
Spalten sortieren, die NaN enthalten (oben)
df.sort_values(by=['col1'], na_position='first')
・ Inplace = False
└ Standard (optional)
└ Nicht überschreiben
・ Inplace = True
└ Überschreiben
Nicht überschreiben
df.sort_values(by=['col1'])
df
Überschreiben
df.sort_values(by=['col1'], inplace=True)
df
Die Zeilenrichtung kann nur durch Zahlen dargestellt oder nicht sortiert werden.
Tabelle zu verwenden
import pandas as pd
col0 = [10, 9, 8, 7]
col1 = [1, 10, 100, 1000]
col2 = [2, 2, 2, 2]
col3 = [0.3, 0.03, 0.003, 0.0003]
col4 = [4, 40, 400, 4000]
df2 = pd.DataFrame(col0, columns=['col0'])
df2['col1'] = col1
df2['col2'] = col2
df2['col3'] = col3
df2['col4'] = col4
df2
Aufsteigende Sorte
df2.sort_values(by=[1], axis=1)
Absteigende Sorte
df2.sort_values(by=[1], axis=1, ascending=False)
Recommended Posts