Heim > Artikel > Backend-Entwicklung > Wie ersetze ich Werte in Pandas DataFrame-Spalten basierend auf übereinstimmenden Werten in einer anderen Spalte?
Ändern von Daten in Pandas basierend auf übereinstimmenden Werten
Beim Übergang von Stata zu Pandas zur Datenmanipulation, Verständnis des Ansatzes zum Ändern von Werten basierend auf Passende Bedingungen sind unerlässlich. Stellen Sie sich die Situation vor, in der wir bestimmte Werte in den Spalten „Vorname“ und „Nachname“ ersetzen möchten, wenn die entsprechenden Werte in der Spalte „ID“ mit einer bestimmten Zahl übereinstimmen.
In Stata ist diese Aufgabe unkompliziert mit Befehlen wie „ersetze FirstName = ‚Matt‘, wenn ID==103.“ Um in Pandas ein ähnliches Ergebnis zu erzielen, können wir die Zuweisungsmethoden „loc“ oder „chained“ verwenden.
loc-Methode:
Die loc-Methode verwendet logische Indizierung, um Daten auszuwerten und zu ändern basierend auf bestimmten Bedingungen:
<code class="python">import pandas as pd df = pd.read_csv("test.csv") df.loc[df.ID == 103, 'FirstName'] = "Matt" df.loc[df.ID == 103, 'LastName'] = "Jones"</code>
Verkettete Zuweisung:
Verkettete Zuweisung wird zwar in neueren Pandas-Versionen nicht empfohlen, kann aber auch für diese Aufgabe verwendet werden:
<code class="python">import pandas as pd df = pd.read_csv("test.csv") df['FirstName'][df.ID == 103] = "Matt" df['LastName'][df.ID == 103] = "Jones"</code>
In beiden Methoden erstellt der Ausdruck „df.ID == 103“ eine boolesche Maske, wobei „True“ Zeilen angibt, in denen die ID gleich 103 ist. Die nachfolgenden Zuweisungen ändern dann die gemeinsamen Werte in „FirstName“ und „LastName“. " Spalten.
Hinweis: Für ältere Pandas-Versionen ist die verkettete Zuweisung ein akzeptabler Ansatz. Allerdings ist loc in moderneren Versionen die bevorzugte Methode, da sie eine größere Stabilität bietet.
Das obige ist der detaillierte Inhalt vonWie ersetze ich Werte in Pandas DataFrame-Spalten basierend auf übereinstimmenden Werten in einer anderen Spalte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!