Einführung
Die Verwandlung in Funktion Pandas (Python) es kann etwas schwer zu verstehen sein, besonders wenn es von a kommt Herausragend Hintergrund. Mal ehrlich, die meisten Datenwissenschaftler verwenden es nicht sofort auf ihrer Lernreise.
Aber die Transformationsfunktion von Pandas ist tatsächlich ein nützliches Werkzeug als Datenwissenschaftler!! Es ist eine leistungsstarke Funktion, auf die Sie sich beim Feature-Engineering in stützen können Felshaken.
Persönlich, Ich habe damit angefangen, als ich bei einem Hackathon Funktions-Engineering durchführen wollte, und ich war angenehm überrascht, wie schnell die Transform-Funktion funktionierte. Ich bin fest davon überzeugt, dass Sie davon profitieren werden, die Transform-Funktion zu kennen und zu verwenden und, Daher, Ich beschloss, in diesem Artikel über sie zu schreiben.
Um die Grundlagen von Python und Pandas für die Datenwissenschaft zu lernen, Schauen Sie sich diese beliebten Kurse an:
Inhaltsverzeichnis
- Was ist die Transformationsfunktion in Python??
- Warum ist die Transformationsfunktion wichtig?
- Apply vs. Transform-Funktion in Python
1. Was ist die Transformationsfunktion in Python??
Die Transform-Funktion von Python gibt einen selbst erstellten Datenrahmen mit transformierten Werten zurück, nachdem die in ihrem Parameter angegebene Funktion angewendet wurde. Dieser Datenrahmen hat die gleiche Länge wie der übergebene Datenrahmen.
Das war viel zu verkraften, Also lass es mich mit einem Beispiel aufschlüsseln.
Nehmen wir an, wir wollen uns vermehren 10 für jedes Element in einem Datenrahmen:
Der ursprüngliche Datenrahmen sieht so aus:
Dies ist der Datenrahmen, den wir erhalten, nachdem wir die Transform-Funktion von Python angewendet haben:
2. Warum ist die Transformationsfunktion von Python wichtig??
Die Transformation ist während der Merkmalsextraktion nützlich. Wie der Name schon sagt, wir extrahieren neue Funktionen aus bestehenden. Lassen Sie uns die Bedeutung der Transformationsfunktion anhand eines Beispiels verstehen.
Hier, wir haben einen Datensatz über ein Kaufhaus:
Wir können sehen, dass jeder Benutzer mehrere Produkte mit unterschiedlichen Kaufbeträgen gekauft hat. Wir würden gerne wissen, wie hoch der durchschnittliche Kaufbetrag jedes Benutzers ist. Dies hilft uns, ein neues Merkmal zu erstellen, damit das Modell die Beziehung besser versteht.
Dies ist die gewünschte Ausgabe:
Dafür gibt es mehrere Ansätze:
- Verwenden von Groupby gefolgt von Merge ()
- Transformationsfunktionsansatz
Beides werde ich in diesem Artikel umsetzen.
Methode 1: Nutzung von Groupby gefolgt von Merge ():
Der erste Ansatz ist die Verwendung von gruppiere nach um die Daten hinzuzufügen, Fügen Sie diese Daten dann mit der Zusammenführungsfunktion wieder in den ursprünglichen Datenrahmen ein (). Lass es uns tun!
Paso 1: die Bibliotheken importieren und den Datensatz lesen
Paso 2: Verwenden Sie groupby, um das Aggregat zu berechnen
Hier ist eine bildliche Darstellung, wie gruppiere nach sammelt den Durchschnitt jedes Benutzers:
Paso 3: mit der Zusammenführungsfunktion () rekombinieren
Jetzt der schwierige Teil. Wie kombinieren wir diese Daten mit dem ursprünglichen Datenrahmen?? Wir werden die Zusammenführungsfunktion verwenden () Für diese Aufgabe. Sie können hier und hier mehr über Joins und Merges in Python mit Pandas lesen, beziehungsweise.
Unser originaler Datenrahmen sieht so aus:
Das macht unseren Job auf jeden Fall. Aber es ist ein mehrstufiger Prozess und erfordert zusätzlichen Code, um die Daten in der von uns benötigten Form zu erhalten. Dieser mehrstufige Prozess kann Ressourcen verbrauchen auf Hackaton wo Zeit eine große Einschränkung ist.
Wir können dies effektiv mit der Transformationsfunktion in lösen Pandas.
Fokus 2: Verwenden der Python-Transformationsfunktion
Dies ist eine wichtige Funktion, um Funktionen zu erstellen. Creme, Es kann die Spielregeln ändern!
Die Transformationsfunktion behält nach der Transformation die gleiche Anzahl von Elementen wie das ursprüngliche Dataset bei. Wir werden uns auf einen super einfachen Linienschritt stützen, indem wir groupby gefolgt von einer Transformation verwenden:
Die bildliche Darstellung ist wie folgt:
Es könnte nicht einfacher sein, Wahrheit? Der ursprüngliche Datenrahmen sieht im letzten Schritt ähnlich aus wie der vorherige..
Die Zeit, die die Transformationsfunktion benötigt, um die obige Operation durchzuführen, ist in einem großen Datenrahmen vergleichsweise geringer. Das ist ein wesentlicher Vorteil gegenüber dem ersten Ansatz, den wir verwendet haben..
Lassen Sie mich die Transform-Funktion mit Pandas in Python demonstrieren.
Angenommen, wir erstellen einen zufälligen Datensatz von 1,000,000 von Reihen und 3 Säulen. Jetzt berechnen wir den Mittelwert einer Spalte basierend auf groupby (ähnlich dem Mittelwert aller Käufe basierend auf groupby user_id).
Paso 1: Importieren Sie die Bibliotheken
Paso 2: Erstellen Sie den Datenrahmen
Paso 3: Verwenden Sie das Zusammenführungsverfahren
Paso 4: Verwenden Sie die Transformationsfunktion
Dies zeigt deutlich, dass die Transformationsfunktion viel schneller ist als der vorherige Ansatz. Gut erledigt!
3. Unterschied zwischen Apply- und Transform-Funktion in Python
Jetzt, Nehmen wir an, wir möchten eine neue Spalte basierend auf den Werten einer anderen Spalte erstellen. Dies ist der Datenrahmen, mit dem wir arbeiten:
Mit der Apply-Funktion:
So sieht die Ausgabe mit der Apply-Funktion aus:
Die App-Funktion sendet eine vollständige Kopie des Datenrahmens an die Arbeit, damit wir alle Zeilen oder Spalten gleichzeitig bearbeiten können.
Mit der Transform-Funktion:
Diese Funktion ist in der Transform-Funktion nicht möglich. Dies manipuliert nur eine einzelne Zeile oder Spalte basierend auf dem Achsenwert und manipuliert nicht einen ganzen Datenrahmen. Deswegen, wir können die Funktion Apply oder Transform nach Bedarf verwenden.
Abschließende Anmerkungen
Die Transform-Funktion ist sehr nützlich, wenn ich Zeilen oder Spalten schnell manipulieren möchte. Wie ich bereits erwähnte, Dies ist besonders bei Hackathons nützlich, wenn die Zeit knapp ist.
Wenn Sie auf weitere Pandas-Funktionen stoßen, Kommentiere und ich werde gerne lernen und teilen!
Nimm an Wettbewerben teil, um deine Fähigkeiten zu zeigen. Das ist ein toller Ausgangspunkt: Verkaufsprojekt Black Friday.
Anmelden kannst du dich bei der Plataforma DataHack Und nimm an coolen Wettbewerben teil und messe dich mit den besten Data-Science-Experten!!
Verwandt
zusammenhängende Posts:
- Bücher zur Datenwissenschaft | Die besten Data-Science-Bücher zum Umwandeln
- 4 Musikdatenwissenschaftsprojekte, die darauf abzielen, die Musikindustrie zu verändern
- Pandas Pivot-Tabelle | Erstellen Sie eine Pivot-Tabelle mit Pandas in Python
- Pandas loc vs iloc | loc vs iloc in Pandas, um Daten auszuwählen











