Heim  >  Artikel  >  Backend-Entwicklung  >  Wie entferne ich doppelte Spalten in Pandas?

Wie entferne ich doppelte Spalten in Pandas?

Linda Hamilton
Linda HamiltonOriginal
2024-11-01 20:17:02887Durchsuche

How to Remove Duplicate Columns in Pandas?

So entfernen Sie doppelte Spalten in Pandas

Wenn Sie es mit einem DataFrame zu tun haben, der doppelte Spalten enthält, möchten Sie diese möglicherweise entfernen zur Datenkonsistenz oder zu Analysezwecken. Hier ist eine einfache Lösung, um dies zu erreichen:

<code class="python">df = df.loc[:,~df.columns.duplicated()].copy()</code>

Mechanismus:

  • df.columns.duplicated() erstellt ein boolesches Array, wobei True ein Duplikat angibt Spaltenname und False gibt einen eindeutigen Namen an.
  • Durch die Anwendung von ~ (logische Negation) wird dieses Array umgedreht und nur die nicht duplizierten Spalten ausgewählt.
  • df.loc[:,...] verwendet Boolesche Indizierung zur Auswahl dieser nicht duplizierten Spalten, wodurch die Duplikate effektiv entfernt werden.
  • Die Funktion copy() stellt sicher, dass ein neuer DataFrame mit den entfernten Duplikaten erstellt wird, wobei der ursprüngliche DataFrame unberührt bleibt.

Hinweis:Diese Methode prüft auf Duplikate basierend auf Spaltennamen, nicht auf Spaltenwerten.

Alternative Ansätze:

Entfernen von Duplikaten Indizes:

<code class="python">df = df.loc[~df.index.duplicated(),:].copy()</code>

Dadurch werden alle doppelten Zeilen mithilfe eines ähnlichen Mechanismus wie oben entfernt, es wird jedoch der Index anstelle der Spaltennamen überprüft.

Entfernen von Duplikaten nach Werten ( Achtung):

<code class="python">df = df.loc[:,~df.apply(lambda x: x.duplicated(),axis=1).all()].copy()</code>

Dieser Ansatz scannt jede Spalte und entfernt sie, wenn alle Werte in dieser Spalte dupliziert sind. Es sollte jedoch mit Vorsicht verwendet werden, da es Werte und nicht Spaltennamen prüft und möglicherweise nicht in allen Fällen die gewünschten Ergebnisse liefert.

Das obige ist der detaillierte Inhalt vonWie entferne ich doppelte Spalten in Pandas?. 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