In Pandas ist es bei der Auswahl eines Teils eines Datenrahmens üblich, die Funktion „.copy()“ zu verwenden. '-Methode zum Erstellen einer Kopie des ursprünglichen Datenrahmens. Dieser Ansatz stellt sicher, dass sich alle an der Teilmenge vorgenommenen Änderungen nicht auf den übergeordneten Datenrahmen auswirken.
Warum eine Kopie erstellen?
Standardmäßig gibt die Indizierung eines Datenrahmens a zurück Ansicht des ursprünglichen Datenrahmens statt einer Kopie. Dies bedeutet, dass sich alle an der Teilmenge vorgenommenen Änderungen direkt auf den übergeordneten Datenrahmen auswirken. Um die Integrität des übergeordneten Datenrahmens aufrechtzuerhalten, ist es wichtig, eine Kopie mit der Methode „.copy()“ zu erstellen.
Folgen des Nichtkopierens
Bedenken Sie Folgendes Folgender Codeausschnitt:
df = pd.DataFrame({'x': [1, 2]}) df_sub = df.iloc[0:1] df_sub.x = -1
In diesem Beispiel ist df_sub eine Ansicht von df. Infolgedessen ändert das Setzen von df_sub.x auf -1 auch df.x:
print(df) x 0 -1 1 2
Vorteile des Kopierens
Das Kopieren von Datenrahmen stellt sicher, dass der übergeordnete Datenrahmen bleibt unberührt. Dies ist besonders wichtig, wenn mehrere Vorgänge an einem Datenrahmen ausgeführt werden und es entscheidend ist, die Originaldaten für eine spätere Analyse oder einen späteren Vergleich aufzubewahren.
df_sub_copy = df.iloc[0:1].copy() df_sub_copy.x = -1 print(df) x 0 1 1 2
In diesem modifizierten Codeausschnitt ist df_sub_copy eine Kopie von df. Daher hat die Änderung von df_sub_copy.x keine Auswirkungen auf df.
Hinweis: Es ist wichtig zu beachten, dass sich das Verhalten der Datenrahmenindizierung in neueren Versionen von Pandas geändert hat. In Pandas 1.0 und früheren Versionen wird beim Indizieren eines Datenrahmens standardmäßig eine Kopie zurückgegeben. In Pandas 1.1 und höher gibt die Indizierung jedoch eine Ansicht zurück. Um ein konsistentes Verhalten über alle Versionen hinweg sicherzustellen, wird empfohlen, beim Erstellen von Teilmengen von Datenrahmen immer die Methode „.copy()“ zu verwenden.
Das obige ist der detaillierte Inhalt vonWarum sollten Sie bei der Auswahl von Teilmengen immer Pandas-DataFrames kopieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!