Neue Spalte zu vorhandenem DataFrame in Python pandas hinzufügen

Ahmed Waheed 30 Januar 2023
  1. [] Operator-Methode zum Hinzufügen einer neuen Spalte in Pandas
  2. df.insert() Methode zum Hinzufügen einer neuen Spalte in Pandas
  3. df.assign() Methode zum Hinzufügen einer neuen Spalte in Pandas
  4. df.loc() Methode zum Hinzufügen einer neuen Spalte in Pandas
Neue Spalte zu vorhandenem DataFrame in Python pandas hinzufügen

Das Hinzufügen einer neuen Spalte zu einem bestehenden DataFrame wird bei der Arbeit mit großen Datensätzen sehr häufig verwendet. Zum Beispiel hat der bestehende DataFrame die Spalten Erste, Letzte und age, und wir müssen eine neue Spalte Stadt hinzufügen. Nachfolgend sind die verschiedenen Möglichkeiten aufgelistet, diese Aufgabe zu erfüllen.

  1. [] Operator Methode
  2. df.insert() Methode
  3. df.assign() Methode
  4. df.loc() Methode

In den nächsten Abschnitten werden wir denselben DataFrame wie folgt verwenden,

import pandas as pd

data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
print(df)

Ausgabe:

     First      Last Age
0      Ali     Azmat  30
1  Sharukh      Khan  40
2    Linus  Torvalds  70

[] Operator-Methode zum Hinzufügen einer neuen Spalte in Pandas

Wir könnten den []-Operator verwenden, um eine neue Spalte zum bestehenden DataFrame hinzuzufügen.

import pandas as pd

data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
city = ["Lahore", "Dehli", "New York"]
df["city"] = city
print(df)

Ausgabe:

     First      Last Age      city
0      Ali     Azmat  30    Lahore
1  Sharukh      Khan  40     Dehli
2    Linus  Torvalds  70  New York

df.insert() Methode zum Hinzufügen einer neuen Spalte in Pandas

Sie können die Funktion df.insert() verwenden, wenn Sie die neue Spalte an einem bestimmten Index hinzufügen möchten. Der erste Parameter der Funktion df.insert() ist der Einfügeindex, beginnend bei Null.

import pandas as pd

data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df.insert(3, "city", ["Lahore", "Dehli", "New York"], True)
print(df)

Ausgabe:

     First      Last Age      city
0      Ali     Azmat  30    Lahore
1  Sharukh      Khan  40     Dehli
2    Linus  Torvalds  70  New York

df.assign() Methode zum Hinzufügen einer neuen Spalte in Pandas

df.assign() kann auch verwendet werden, um eine neue Spalte zu einem bestehenden DataFrame hinzuzufügen.

import pandas as pd

data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])

df = df.assign(city=["Lahore", "Dehli", "New York"])
print(df)

Ausgabe:

     First      Last Age      city
0      Ali     Azmat  30    Lahore
1  Sharukh      Khan  40     Dehli
2    Linus  Torvalds  70  New York

Sehen wir uns an, wie man mit df.assign() mehrere Spalten hinzufügt. Im folgenden Beispiel werden die Spalten city und score hinzugefügt.

import pandas as pd

data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])

df = df.assign(city=["Lahore", "Dehli", "New York"], score=[20, 30, 40])
print(df)

Ausgabe:

     First      Last Age      city  score
0      Ali     Azmat  30    Lahore     20
1  Sharukh      Khan  40     Dehli     30
2    Linus  Torvalds  70  New York     40

df.loc() Methode zum Hinzufügen einer neuen Spalte in Pandas

Die Methode df.loc() kann auch eine neue Spalte zu einem bestehenden DataFrame hinzufügen.

import pandas as pd

data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df.loc[:, "city"] = ["Lahore", "Dehli", "New York"]
print(df)

Ausgabe:

     First      Last Age      city
0      Ali     Azmat  30    Lahore
1  Sharukh      Khan  40     Dehli
2    Linus  Torvalds  70  New York