Pandas erstellen die Spalte basierend auf dem Zustand

Pandas erstellen die Spalte basierend auf dem Zustand
Python ist die am häufigsten verwendete Codierungssprache in der Data Science Arena. Ein Faktor für seine Bekanntheit sind viele Python -Bibliotheken für die Datenanalyse. Diese Bibliotheken bieten Techniken zur Ausführung von Datenoperationen, die schnell, modular und effizient sind. Pandas und Numpy sind zwei bekannte Python-Module für Datenanalysen und Manipulation.

Das Generieren neuer Spalten aus bereits vorhandenen Spalten in einem Datensatz ist eine übliche Operation in der Datenvorverarbeitungsphase. Es ist auch ein wichtiger Aspekt des Feature Engineering. Unter bestimmten Umständen werden neue Spalten als Reaktion auf die Bedingungen auf vorhandenen Spalten konstruiert. Pandas und Numpy bieten eine Reihe von Optionen für diese Aufgabe.

In diesem Beitrag werden wir verschiedene Ansätze für den Bau einer neuen Spalte betrachten, abhängig von den Bedingungen vorhandener Spalten.

Methoden zum Erstellen einer Spalte basierend auf Bedingungen in Pandas

Die Pandas -Techniken, die wir in diesem Artikel verwenden werden, sind unten angegeben:

  • Listenverständnisstechnik auflisten
  • Datenrahmen.anwenden () Funktion
  • Datenrahmen.MAP () Funktion

In dieser Lektion werden wir diese Methoden anwenden und erklären, wie alle drei Arten in Pandas implementiert werden können.

Beispiel 01: Verwendung der Listenverständnisstechnik

Der erste Ansatz, den wir hier verwenden, um eine Spalte basierend auf der Bedingung vorhandener Spalten zu erstellen, ist das „Listenverständnis“. Wir werden diese Methode mit einem praktischen Beispiel lernen. Beginnen wir den Code.

Wir verwenden das Tool „Spyder“ für die Implementierung und Ausführung der Python -Beispielcodes in diesem Artikel. Wir eröffnen eine neue Python -Datei in „Spyder“, um unser Python -Skript zu schreiben. Unser Code beginnt mit dem Importieren der erforderlichen Bibliothek „Pandas als PD“ hier. Dann erstellen wir einen Datenrahmen mit der „PD.DataFrame () ”-Funktion. Wir initialisieren diesen Datenrahmen mit zwei Spalten "Namen" und dem "Alter".

Die Spalte "Name" speichert fünf Namen "Elsa", "Emma", "Alaxandar", "Ron" und "Sasha", "Alaxandar", "Ron" und "Sasha". Während die Spalte „Alter“ die gleiche Länge der Ganzzahlwerte speichert, die "28", "19", "26", "19" und "31" sind. Anschließend speichern wir diesen Datenrahmen in einem DataFrame -Objekt, in dem wir "Info" erstellt haben. Dieser Datenrahmen kann vom Objekt "Info" zugegriffen werden. In der letzten Zeile wird die Methode „Print ()“ aufgerufen, um den neu erstellten Datenrahmen anzuzeigen.

Drücken Sie für die Ausführung des obigen Code. Die auf dem Terminal angezeigte Ausgabe zeigt einen Datenrahmen mit 2 Spalten, wobei jeweils 5 Werte gespeichert werden.

Jetzt werden wir eine andere Spalte erstellen, die auf einer Bedingung in der zuvor erstellten Spalte basiert. Wir erstellen eine andere Spalte "CAN_VOTE" im Datenrahmen "Info", um zu überprüfen, wer in den Wahlen in diesem Jahr abstimmen kann. Wir wenden eine Erkrankung an, wobei die Listenverständnismethode verwendet wird, wenn das Alter der Person 18 oder höher ist, um abzustimmen. Wir verwenden eine Variable „A“, die einen Wert aus der Spalte „Alter“ darstellt, da wir die Bedingungen basierend auf dem Alter der Person überprüfen. Die Bedingung wird „wahr“, wenn das Alter gleich oder größer als „18“ ist, sonst ergibt die Bedingung „falsch“; wobei "A" in der Spalte "Alter" im Datenrahmen "Info" ein Wert ist.

Der erste Wert der Spalte „Alter“ wird in „A“ gespeichert, das „28“ ist, und die Bedingung wird überprüft. Da „28“ größer als „18“ ist, ergibt die Bedingung „wahr“ und der erste Wert der Spalte „Alter“ wird „wahr“. Dieser Vorgang wiederholt sich weiter, bis alle Werte auf die angegebene Bedingung überprüft wurden. Anschließend verwenden wir die Methode "print ()", um den Datenrahmen mit einer neuen Spalte basierend auf der Bedingung anzuzeigen.

Wenn wir das Skript ausführen. Im folgenden Ausgangsbild sehen Sie, dass die einzigen 4th Record hat einen Wert von weniger als 18, so dass in der Spalte "CAN_VOTE" der Wert "falsch" ist, während alle anderen Datensätze den angegebenen Zustand erfüllen und daher als "wahr" bewertet werden.

Beispiel 02: Verwendung des Pandas -Datenframe.anwenden () Funktion

Die zweite Technik, die wir hier diskutieren werden, ist der Pandas „DataFrame.anwenden () ”Funktion zum Erstellen einer konditionsbasierten Spalte.

Der im vorhergehenden Beispiel generierte Datenrahmen wird für diese Demonstration verwendet. Wir haben den Datenrahmen "Info", der zwei Spalten "Name" und "Alter" enthält, jeweils 5 Datensätze. Nach dem Drucken des Datenrahmens „Info“ arbeiten wir dann daran, eine neue Spalte in diesem Datenrahmen zu erstellen. Hier haben wir eine Funktion "CAN_VOTE" mit "Alter" als Parameter definiert. Die erste „If“ -Konstruktion startet, die besagt, dass, wenn das Alter größer und gleich 18 ist, einen „wahren“ Wert zurückgeben. Wenn die Bedingung nicht übereinstimmt, gibt sie "falsch" zurück. Diese Funktion überprüft jeden Datensatz in der Altersspalte und stimmt mit der angegebenen Bedingung überein, bis jeder Datensatz verglichen wird. Jetzt müssen wir eine Spalte erstellen, die auf der Bedingung basiert, die „CAN_VOTE“ ist.anwenden () ”Funktion.

Wir geben die Funktion, die wir oben „CAN_VOTE“ definiert haben, als Parameter für die “.anwenden () ”Methode. Es wird den Wert aus der Spalte "Alter" übernommen und in der Funktion "CAN_VOTE" überprüft und das Ergebnis in einer neuen Spalte "CAN_VOTE" speichern. Zuletzt verwenden wir die Methode „print ()“, um das Ergebnis zu drucken.

Das folgende Ausgabebild zeigt die neu erstellte Spalte im DataFrame „Info“, der 4 "True" -Werte und einen "falschen" Wert basierend auf der angegebenen Bedingung enthält.

Beispiel 03: Verwendung des Pandas DataFrame.MAP () Funktion

Unsere letzte Methode zum Erstellen einer Spalte, die auf der Bedingung basiert.map () ”Funktion.

Wir haben die Bibliothek "Pandas als PD" zuerst in unsere Python -Datei importiert. Sobald die Pandas -Funktionen aktiviert sind, schreiben wir unseren Hauptcode. Wir erstellen unseren Datenrahmen mit dem „PD.DataFrame () ”-Methode und initialisieren Sie den DataFrame mit zwei Spalten„ Datum “und„ Ereignis “. Die Spalte "Datum" speichert die DateTime -Werte "15/8/2022", "16/9/2022", "15/10/2022", "15/11/2022" und "16/12/2022 ”.

Während die Spalte "Ereignis" 5 Stringwerte speichert, sind "Cartoons", "Games", "Cartoons", "Rätsel" und "Spiele". Wir haben diesen Datenrahmen in einem DataFrame -Objekt "Daten" gespeichert. Das Aufrufen der Methode "print ()" mit dem DataFrame -Objekt "Daten" als Parameter zeigt den neu erstellten Datenrahmen auf dem Terminal an.

Wenn wir auf die Schaltfläche "Datei ausführen" klicken, wird die Python -Datei ausgeführt. Der Ausgangsdatenrahmen wird am Terminal mit zwei Spalten "Datum" und "Ereignis" ausgestellt.

Jetzt erstellen wir eine andere Spalte, indem wir eine Bedingung auf die vorhandenen Spalten anwenden. Wir erstellen ein Wörterbuch „Plist“ und setzen den Preis jedes Ereignisses in IT ein, das „Cartoons: 1500“, „Games: 800“ und „Rätsel: 1200“ enthält. Fügen Sie dann einen neuen Spalte "Preis" im Datenrahmen "Daten" hinzu und weisen Sie sie den Wert der Zuordnung der Datensätze der Spalte „Ereignis“ mit den Wörterbuchdatensätzen "Plist" zu.

Zu diesem Zweck verwenden wir den „DataFrame.map () ”Funktion. Der Datenrahmen mit dem Spaltennamen "Daten ['Preis']" wird mit dem "geschrieben" geschrieben.MAP () ”-Funktion und der Name des Wörterbuchs„ Plist “wird zwischen seinen Zahnspangen geliefert. Diese Funktion kartiert also das „Ereignis“ mit dem „Zettel“, wenn ein Wert übereinstimmt, führt zu der neuen Spalte „Preis“.

Das Ausgabebild zeigt beide Datenrahmen. Der zweite DataFrame enthält eine neue Spalte hinzugefügt, die jeden Datensatz basierend auf der Bedingungsübereinstimmung einfügt.

Abschluss

Die heutige Lektion basiert auf dem Erstellen der Spalte basierend auf einem bestimmten Zustand. Wir haben Ihnen das Konzept erklärt, eine neue Spalte aus vorhandenen zu erstellen. Pandas bieten uns eine Vielzahl von Methoden, um das gewünschte Ergebnis zu erzielen. In diesem Tutorial haben wir einige der Pandas -Funktionen „DataFrame“ verwendet.anwenden () ”,„ DataFrame.map () "und" Verständnis auflisten ". Jede Technik wird mit einem praktischen Beispielcode ausgearbeitet, der auf Python im Tool „Spyder“ implementiert ist. Wir sind der Meinung.