Pandas DatenFrame kopieren
-
Syntax der Methode
pandas.DataFrame.copy() -
Kopieren eines Pandas DataFrame mit der Methode
pandas.DataFrame.copy() - Kopieren von Pandas DataFrame durch Zuweisung des DataFrame an eine Variable
In diesem Tutorial wird vorgestellt, wie wir mit der Methode DataFrame.copy() eine Kopie eines DataFrame-Objekts erstellen können.
import pandas as pd
items_df = pd.DataFrame(
{
"Id": [302, 504, 708],
"Cost": ["300", "400", "350"],
}
)
print(items_df)
Ausgabe:
Id Cost
0 302 300
1 504 400
2 708 350
Anhand des obigen Beispiels werden wir die Verwendung der Methode DataFrame.copy() in Pandas demonstrieren.
Syntax der Methode pandas.DataFrame.copy()
DataFrame.copy(deep=True)
Sie gibt eine Kopie des DataFrame zurück. deep ist standardmäßig True, was bedeutet, dass jede Änderung, die in der Kopie vorgenommen wird, nicht im Original-DataFrame reflektiert wird. Wenn wir jedoch deep=False setzen, werden alle Änderungen, die in der Kopie vorgenommen werden, auch im Original-DataFrame wiedergegeben.
Kopieren eines Pandas DataFrame mit der Methode pandas.DataFrame.copy()
import pandas as pd
import numpy as np
items_df = pd.DataFrame(
{
"Id": [302, 504, 708],
"Cost": ["300", "400", "350"],
}
)
deep_copy = items_df.copy()
print("Original DataFrame before changing value in copy DataFrame:")
print(items_df, "\n")
print("Copy DataFrame before changing value in copy DataFrame:")
print(deep_copy, "\n")
deep_copy.loc[0, "Cost"] = np.nan
print("Original DataFrame after changing value in copy DataFrame:")
print(items_df, "\n")
print("Copy DataFrame after changing value in copy DataFrame:")
print(deep_copy, "\n")
Ausgabe:
Original DataFrame before changing value in copy DataFrame:
Id Cost
0 302 300
1 504 400
2 708 350
Copy DataFrame before changing value in copy DataFrame:
Id Cost
0 302 300
1 504 400
2 708 350
Original DataFrame after changing value in copy DataFrame:
Id Cost
0 302 300
1 504 400
2 708 350
Copy DataFrame after changing value in copy DataFrame:
Id Cost
0 302 NaN
1 504 400
2 708 350
Es wird eine Kopie des DataFrames items_df als deep_copy erstellt. Wenn wir einen Wert der Kopie deep_copy ändern, gibt es keine Änderung im ursprünglichen DataFrame items_df. Wir setzen den Wert der Spalte Kosten der 1. Zeile in deep_copy auf NaN, aber items_df bleibt unverändert.
Kopieren von Pandas DataFrame durch Zuweisung des DataFrame an eine Variable
import pandas as pd
import numpy as np
items_df = pd.DataFrame(
{
"Id": [302, 504, 708],
"Cost": ["300", "400", "350"],
}
)
copy_cost = items_df["Cost"]
print("Cost column of Original DataFrame before changing value in copy DataFrame:")
print(items_df, "\n")
print("Cost column of Copied DataFrame before changing value in copy DataFrame:")
print(copy_cost, "\n")
copy_cost[0] = np.nan
print("Cost column of Original DataFrame after changing value in copy DataFrame:")
print(copy_cost, "\n")
print("Cost column of Copied DataFrame after changing value in copy DataFrame:")
print(copy_cost, "\n")
Ausgabe:
Cost column of Original DataFrame before changing value in copy DataFrame:
Id Cost
0 302 300
1 504 400
2 708 350
Cost column of Copied DataFrame before changing value in copy DataFrame:
0 300
1 400
2 350
Name: Cost, dtype: object
Cost column of Original DataFrame after changing value in copy DataFrame:
0 NaN
1 400
2 350
Name: Cost, dtype: object
Cost column of Copied DataFrame after changing value in copy DataFrame:
0 NaN
1 400
2 350
Name: Cost, dtype: object
Es wird eine Kopie der Spalte Cost des DataFrames items_df als copy_cost erstellt.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedInVerwandter Artikel - Pandas DataFrame
- Wie man Pandas DataFrame-Spaltenüberschriften als Liste erhält
- Pandas DataFrame-Spalte löschen
- Wie man DataFrame-Spalte in Datetime in Pandas konvertiert
- Wie konvertiert man eine Fließkommazahl in eine Ganzzahl in Pandas DataFrame
- Wie man Pandas-DataFrame nach den Werten einer Spalte sortiert
- Wie erhält man das Aggregat der Pandas gruppenweise und sum
