Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich eine benutzerdefinierte Sortierung von Pandas DataFrame-Spalten mithilfe eines Wörterbuchs durchführen?

Wie kann ich eine benutzerdefinierte Sortierung von Pandas DataFrame-Spalten mithilfe eines Wörterbuchs durchführen?

Mary-Kate Olsen
Freigeben: 2024-11-27 12:22:10
Original
355 Leute haben es durchsucht

How Can I Perform Custom Sorting of Pandas DataFrame Columns Using a Dictionary?

Benutzerdefinierte Sortierung in Pandas DataFrame

Benutzerdefinierte Sortierung in Pandas ermöglicht es Ihnen, die Zeilen eines DataFrame basierend auf einer bestimmten Reihenfolge oder einem bestimmten Kriterium neu anzuordnen. Wenn ein DataFrame eine Spalte mit Werten enthält, die gemäß einer benutzerdefinierten Zuordnung sortiert werden müssen, z. B. die Konvertierung von Monatsnamen in numerische Indizes, können Sie benutzerdefinierte Sortiertechniken von Pandas nutzen.

Lösung für benutzerdefinierte Sortieren mit einem Wörterbuch:

Um eine benutzerdefinierte Sortierung mit einem Wörterbuch zu erreichen, befolgen Sie diese Schritte:

  1. Erstellen Sie einen Pandas DataFrame mit der gewünschten Spalte, die Monatsnamen enthält.
  2. Erstellen Sie ein Wörterbuch, das die Monatsnamen den entsprechenden numerischen Indizes zuordnet, z. B. custom_dict = {'March':0, 'April':1, 'Dec':3}.
  3. Wenden Sie die Funktion apply() auf die Spalte an und verwenden Sie eine Lambda-Funktion, um jeden Monatsnamen seinem Index zuzuordnen mit dem Wörterbuch, z.B. df['m'].apply(lambda x: custom_dict[x]).
  4. Sortieren Sie den DataFrame nach der in Schritt 3 erstellten Zwischenreihe, z. B. df.sort_values('intermediary_series').

Beispiel:

import pandas as pd

# Custom dictionary mapping month names to indices
custom_dict = {'March':0, 'April':1, 'Dec':3}

# Create a DataFrame with a column containing month names
df = pd.DataFrame([[1, 2, 'March'],[5, 6, 'Dec'],[3, 4, 'April']], columns=['a','b','m'])

# Apply the custom sorting
df['intermediary_series'] = df['m'].apply(lambda x: custom_dict[x])
df.sort_values('intermediary_series')
Nach dem Login kopieren

Mit diesem Ansatz können Sie den DataFrame basierend auf der gewünschten Reihenfolge sortieren, die in angegeben ist das benutzerdefinierte Wörterbuch.

Das obige ist der detaillierte Inhalt vonWie kann ich eine benutzerdefinierte Sortierung von Pandas DataFrame-Spalten mithilfe eines Wörterbuchs durchführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage