Heim >Backend-Entwicklung >Python-Tutorial >Wie füge ich in Python effizient eine neue Spalte zu einem Pandas-DataFrame hinzu?

Wie füge ich in Python effizient eine neue Spalte zu einem Pandas-DataFrame hinzu?

DDD
DDDOriginal
2024-12-22 11:32:09333Durchsuche

How to Efficiently Add a New Column to a Pandas DataFrame in Python?

Hinzufügen einer neuen Spalte zu einem vorhandenen DataFrame

Bei Datenmanipulationsaufgaben ist es häufig erforderlich, vorhandene DataFrames um zusätzliche Spalten zu erweitern. Hier beschäftigen wir uns mit der Frage, wie dies in Python mithilfe von Pandas erreicht werden kann.

Problemstellung

Betrachten Sie den folgenden DataFrame mit indizierten Spalten und Zeilen mit nicht kontinuierlichen Zahlen :

          a         b         c         d
2  0.671399  0.101208 -0.181532  0.241273
3  0.446172 -0.243316  0.051767  1.577318
5  0.614758  0.075793 -0.451460 -0.012493

Unser Ziel ist es, diesem DataFrame eine neue Spalte „e“ hinzuzufügen, ohne die vorhandenen Daten zu ändern. Die neue Spalte sollte die gleiche Länge wie der DataFrame haben.

Lösung

Methode 1 (Zuweisen):

Die Die effizienteste Methode zum Hinzufügen einer Reihe von Werten als neue Spalte zu einem DataFrame ist die Verwendung von assign Funktion:

df1 = df1.assign(e=pd.Series(np.random.randn(sLength)).values)

wobei:

  • df1 ist der ursprüngliche DataFrame
  • sLength ist die Länge des ursprünglichen DataFrame
  • np.random .randn(sLength) generiert eine Reihe von Zufallswerten Werte

Methode 2 (loc):

Eine andere Methode besteht darin, den loc-Accessor zu verwenden, um die Werte der neuen Spalte festzulegen :

df1.loc[:,'f'] = pd.Series(np.random.randn(sLength), index=df1.index)

wobei:

  • df1 das Original ist DataFrame
  • 'f' ist der Name der neuen Spalte
  • pd.Series(np.random.randn(sLength)) generiert eine Reihe von Zufallswerten
  • df1. index legt den Index der neuen Spalte so fest, dass er mit dem ursprünglichen DataFrame übereinstimmt

Beide Methoden fügen effektiv die gewünschte neue Spalte „e“ hinzu den DataFrame, wobei die vorhandenen Daten erhalten bleiben.

Das obige ist der detaillierte Inhalt vonWie füge ich in Python effizient eine neue Spalte zu einem Pandas-DataFrame hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn