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