Ich habe einen Datensatz, df, mit zwei Variablen, x und y. Ich möchte eine Funktion schreiben, macht folgendes:Wie schreibe ich eine Lambda-Funktion, die in Python von zwei Variablen (Spalten) abhängig ist
x wenn x> 100 und y < 50 sonst y
Ich bin es gewohnt, Datenanalyse in STATA Dabei bin ich relativ neu Pandas für die Datenanalyse. Wenn es hilft, in Stata würde es wie folgt aussehen:
ersetzen x = cond (x> 100 & y < 50, x, y)
Mit anderen Worten, die Funktion ist davon abhängig zwei Spalten in df und gibt einen Wert von einer Variablen oder der anderen in jeder Zeile zurück, abhängig davon, ob die Bedingung erfüllt ist.
Bisher habe ich wie neue Variablen durch neue Funktionen wurden zu erstellen:
df.dummyVar = df.x.apply (lambda x: 1, wenn x> 100 sonst 0)
Mit StackOverflow und der Dokumentation konnte ich nur herausfinden, wie man eine Funktion in Abhängigkeit von einer einzelnen Variablen auf mehr als eine Spalte anwendet (mit der Option axis). Bitte helfen Sie.
Genau das habe ich gebraucht. Und das ist großartig, weil ich schon sehen kann, wie ich es auf 3 oder mehr Variablen zu Bedingungen erweitern kann. Vielen Dank! – seeiespi
@seeiespi Sie sind willkommen, Sie können dies als Antwort akzeptieren, wird es ein Häkchen unter den Abstimmknöpfen sein. Die Verwendung von apply und iterating sollte immer die letzte Wahl sein, wenn möglich eine Methode finden, die auf dem gesamten Datenrahmen funktioniert – EdChum