Pandas: Die Regeln für die Generierung von Ansichten und Kopien verstehen
Verwirrung bei der Identifizierung von Ansichten und Kopien
Die Feststellung, ob eine Auswahl aus einem Pandas DataFrame zu einer Ansicht oder einer Kopie führt, kann rätselhaft sein. Diese Verwirrung ergibt sich hauptsächlich aus der Vielfalt der Indizierungsvorgänge und ihrem unterschiedlichen Verhalten.
Allgemeine Regeln
Spezifische Beispiele
Einem Vergleich Werte zuweisen:
<code class="python">df[df.C <= df.B] = 7654321</code>
Diese Zuweisung ändert den ursprünglichen DataFrame df, da der Indexer .loc zum direkten Festlegen von Werten verwendet wird.
Verkettete Indizierung:
<code class="python">df[df.C <= df.B].loc[:, 'B':'E']</code>
Von diesem Vorgang wird abgeraten, da er möglicherweise nicht zuverlässig ist. Um mögliche Probleme zu vermeiden, verwenden Sie stattdessen die folgende Syntax:
<code class="python">df.loc[df.C <= df.B, 'B':'E']</code>
Ändern von Werten basierend auf einer Abfrage
Um alle Werte in a zu ändern DataFrames, die eine bestimmte Abfragebedingung erfüllen, verwenden den Loc-Indexer mit der Abfragebedingung als Argument. Zum Beispiel:
<code class="python">df.loc[df.C <= df.B, 'E'] = 40</code>
Diese Zuweisung ändert nur die Werte in Spalte „E“ für Zeilen, in denen df.C kleiner oder gleich df.B ist.
Das obige ist der detaillierte Inhalt vonPandas: Wann erstellt die Auswahl aus einem DataFrame eine Ansicht oder eine Kopie?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!