Wie man ein Pandas-Dataframe aus einem Wörterbuch erstellt

Wie man ein Pandas-Dataframe aus einem Wörterbuch erstellt

  • Künstliche Intelligenz
6 Minuten Lesezeit Aktualisiert Nov 26, 2020

Auf einen Blick: Das Erstellen eines Pandas DataFrame aus einem Wörterbuch ist unkompliziert und verwendet Methoden wie den DataFrame Constructor und from_dict(). Diese Ansätze ermöglichen es Nutzern, DataFrames mit bestimmten Spaltennamen und unterschiedlichen Orientierungen zu erstellen.

  • Zwei Methoden zur Erstellung von DataFrames aus Wörterbüchern werden beschrieben.
  • Die Kompatibilität mit den entsprechenden Python- und Pandas-Versionen ist entscheidend.

Hier ist ein weiteres Beispiel dafür, wie nützlich und leistungsfähig Pandas ist. Pandas können Datenframes aus vielen Arten von Datenstrukturen erstellen – ohne dass man viel umfangreichen Code schreiben muss. Eine dieser Datenstrukturen ist ein Wörterbuch. In diesem Tutorial zeigen wir Ihnen zwei Ansätze dafür.

Ein Wort zu Pandas-Versionen

Bevor du anfängst, aktualisiere Python auf mindestens 3.7. Mit Python 3.4 ist die höchste verfügbare Version von Pandas 0.22, die in allen Fällen nicht die Angabe von Spaltennamen beim Erstellen eines Wörterbuchs unterstützt. Wenn du virtualenv benutzt, erstelle eine neue Python-Umgebung und installiere Pandas so:

    virtualenv py37  --python=python3.7
pip install pandas

Du kannst die Pandas-Version überprüfen mit:

    import pandas as pd
pd.__version__

Erstellen Sie einen Dataframe mit dem Pandas DataFrame-Konstruktor

Hier konstruieren wir einen Pandas-Datenrahmen aus einem Wörterbuch. Wir verwenden den Pandas-Konstruktor, da er verschiedene Arten von Datenstrukturen verarbeiten kann. Das untenstehende Wörterbuch hat zwei Schlüssel, Szene und Fassade. Jeder Wert hat ein Array aus vier Elementen, sodass er natürlich in eine Tabelle mit 2 Spalten und 4 Zeilen passt. Pandas ist dafür konzipiert, mit Zeilen- und Spaltendaten zu arbeiten. Jede Zeile hat einen Zeilenindex. Standardmäßig sind es die Zahlen 0, 1, 2, 3, ... Aber es erlaubt auch die Verwendung von Titeln. Verwenden wir das Gleiche im Array idx.

    import pandas as pd

dict =  {'scene': ["foul", "murder", "drunken", "intrigue"],

'facade': ["fair", "beaten", "fat", "elf"]}

idx = ['hamlet', 'lear', 'falstaff','puck']

dp = pd.DataFrame(dict,index=idx)

Hier ist der resultierende Datenrahmen:

Erstellen Sie einen Dataframe mit der Pandas from_dict()-Methode

Pandas hat außerdem eine Pandas.DataFrame.from_dict()- Methode. Falls das sich wiederholt, da der reguläre Konstruktor mit Wörterbüchern arbeitet, sieht man im untenstehenden Beispiel, dass die from_dict()- Methode Parameter unterstützt, die einzigartig für Wörterbücher sind. Im Code sind die Schlüssel des Wörterbuchs Spalten. Die Zeilenindizes sind Zahlen. Das ist die Standardorientierung, was orient='Spalten' bedeutet, dass man die Wörterbuchschlüssel als Spalten nimmt und die Werte in Zeilen legt.

    pd.DataFrame.from_dict(dict)

Jetzt drehen wir das auf die Seite.  Wir machen die Zeilen zu den Wörterbuchtasten.

    pd.DataFrame.from_dict(dict,orient='index')

Beachten Sie, dass die Spalten keine Namen haben, sondern nur Zahlen. Das ist nicht sehr nützlich, daher verwenden wir unten den Parameter Columns, der in Pandas 0.23 eingeführt wurde.

Es ist so einfach, die Spaltennamen in ein Array einzufügen und es als Spaltenparameter zu geben. Man fragt sich, warum die früheren Versionen von Pandas das nicht hatten.

    pd.DataFrame.from_dict(dict,orient='index',columns=idx)

hamlet    lear falstaff      puck

scene    foul  murder  drunken  intrigue

facade   fair  beaten      fat       elf

Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.

Mehr aus Künstliche Intelligenz

Interessieren Sie sich für mehr von BMC?

The Brief ist unsere monatliche E-Mail zum Mainframe und zur Enterprise-Orchestrierung: Recherchen, Kundenberichte, Produktnachrichten, Events.

Mit der Registrierung für dieses Angebot bestätigen Sie, dass Sie die Datenschutzrichtlinie von BMC gelesen und zugestimmt haben.

Sie haben The Brief abonniert

Das Briefing umfasst die Mainframe- und Enterprise-Orchestrierung – BMC AMI und Control-M – sowie die Analystenforschung, Kundeneinsätze und Events in beiden Bereichen.