HOWTO · Pandas
Wie man eine leere Spalte in Pandas DataFrame erstellt
Wir können eine leere Spalte zu DataFrame in Pandas hinzufügen, indem wir den einfachen Zuweisungsoperator, die Methoden reindex(), assign() und insert() verwenden.
Auf dieser Seite
Wir könnten die Methoden reindex(), assign() und insert() des DataFrame-Objekts verwenden, um eine leere Spalte zu DataFrame in Pandas hinzuzufügen. Wir können der Spalte von DataFrame auch direkt einen leeren Wert zuweisen, um eine leere Spalte in Pandas zu erstellen.
Leere Spalten-Pandas mit der einfachen Zuweisung erstellen
Wir können Spalten von DataFrame direkt einer leeren Zeichenkette, einem NaN-Wert oder einer leeren Pandas Series zuweisen, um eine leere Spalte in Pandas zu erzeugen.
import pandas as pd
import numpy as np
dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]
df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})
df["Empty_1"] = ""
df["Empty_2"] = np.nan
df["Empty_3"] = pd.Series()
print(df)
Ausgabe:
Date Income Expenses Empty_1 Empty_2 Empty_3
0 April-20 10 3 NaN NaN
1 April-21 20 8 NaN NaN
2 April-22 10 4 NaN NaN
3 April-23 15 5 NaN NaN
4 April-24 10 6 NaN NaN
5 April-25 12 10 NaN NaN
Es werden drei leere Spalten in df erzeugt. Der Spalte Empty_1 wird die leere Zeichenkette zugewiesen, Empty_2 werden NaN Werte zugewiesen und Empty_3 wird eine leere Pandas Series zugewiesen, was ebenfalls zu NaN Werten der gesamten Empty_3 Spalte führt.
pandas.DataFrame.reindex() Methode zum Hinzufügen einer leeren Pandas-Spalte in Pandas
Wir können die Methode pandas.DataFrame.reindex() verwenden, um mehrere leere Spalten zu einem DataFrame in Pandas hinzuzufügen.
import pandas as pd
import numpy as np
dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]
df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})
column_names = ["Empty_1", "Empty_2", "Empty_3"]
df = df.reindex(columns=column_names)
print(df)
Ausgabe:
Empty_1 Empty_2 Empty_3
0 NaN NaN NaN
1 NaN NaN NaN
2 NaN NaN NaN
3 NaN NaN NaN
4 NaN NaN NaN
5 NaN NaN NaN
Der Code erzeugt neue Spalten Empty_1, Empty_2, Empty_3 in df mit allen NaN Werten, während alle alten Informationen verloren gehen.
Um mehrere neue Spalten unter Beibehaltung der ursprünglichen hinzuzufügen, könnten wir Code wie folgt schreiben:
import pandas as pd
import numpy as np
dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]
df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})
df = df.reindex(columns=df.columns.tolist() + ["Empty_1", "Empty_2", "Empty_3"])
print(df)
Ausgabe:
Date Income Expenses Empty_1 Empty_2 Empty_3
0 April-20 10 3 NaN NaN NaN
1 April-21 20 8 NaN NaN NaN
2 April-22 10 4 NaN NaN NaN
3 April-23 15 5 NaN NaN NaN
4 April-24 10 6 NaN NaN NaN
5 April-25 12 10 NaN NaN NaN
Dies fügt die leeren Spalten Empty_1, Empty_2 und Empty_3 in df unter Beibehaltung der ursprünglichen Information hinzu.
pandas.DataFrame.assign() zum Hinzufügen einer leeren Spalte in Pandas DataFrame
Wir können die Methode pandas.DataFrame.assign() verwenden, um eine leere Spalte zu DataFrame in Pandas hinzuzufügen.
import pandas as pd
import numpy as np
dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]
df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})
df = df.assign(Empty_1="", Empty_2=np.nan)
print(df)
Ausgabe:
Date Income Expenses Empty_1 Empty_2
0 April-20 10 3 NaN
1 April-21 20 8 NaN
2 April-22 10 4 NaN
3 April-23 15 5 NaN
4 April-24 10 6 NaN
5 April-25 12 10 NaN
Sie erzeugt eine leere Spalte mit den Namen Empty_1 und Empty_2, die nur NaN-Werte im df enthält.
pandas.DataFrame.insert() zum Hinzufügen einer leeren Spalte zu einem DataFrame
Mit pandas.DataFrame.insert() können wir eine Spalte an einer bestimmten Stelle in einen DataFrame einfügen. Wir können diese Methode verwenden, um eine leere Spalte in einen DataFrame einzufügen.
Die Syntax:
DataFrame.insert(loc, column, value, allow_duplicates=False)
Es wird eine neue Spalte mit dem Namen column an der Stelle loc mit dem Standardwert value erzeugt. allow_duplicates=False stellt sicher, dass es nur eine Spalte mit dem Namen column im DataFrame gibt. Wenn wir eine leere Zeichenkette oder einen NaN-Wert als Wert-Parameter übergeben, können wir dem DataFrame eine leere Spalte hinzufügen.
import pandas as pd
import numpy as np
dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]
df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})
df.insert(3, "Empty_1", "")
df.insert(4, "Empty_2", np.nan)
print(df)
Ausgabe:
Date Income Expenses Empty_1 Empty_2
0 April-20 10 3 NaN
1 April-21 20 8 NaN
2 April-22 10 4 NaN
3 April-23 15 5 NaN
4 April-24 10 6 NaN
5 April-25 12 10 NaN
Es wird die Spalte Empty_1 in df mit allen leeren Werten bei Index 3 und Empty_2 bei Index 4 mit allen NaN Werten erzeugt.