Multi-Column-Faktorisierung bei Pandas

Die Pandasfactorize Die Funktion weist jeden eindeutigen Wert in einer Reihe einem sequentiellen, 0-basierten Index zu und berechnet, zu welchem ​​Index jeder Reiheneintrag gehört.

Ich möchte das Äquivalent von erreichenpandas.factorize auf mehreren Spalten:

import pandas as pd
df = pd.DataFrame({'x': [1, 1, 2, 2, 1, 1], 'y':[1, 2, 2, 2, 2, 1]})
pd.factorize(df)[0] # would like [0, 1, 2, 2, 1, 0]

Das heißt, ich möchte jedes eindeutige Tupel von Werten in mehreren Spalten eines Datenrahmens bestimmen, jedem einen sequentiellen Index zuweisen und berechnen, zu welchem ​​Index jede Zeile im Datenrahmen gehört.

Factorize Funktioniert nur mit einzelnen Spalten. Gibt es eine mehrspaltige äquivalente Funktion in Pandas?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage