Wie konvertiert man kategoriale Daten in Pandas in numerische Indizes?

Mary-Kate Olsen
Freigeben: 2024-10-28 11:00:30
Original
782 Leute haben es durchsucht

How to Convert Categorical Data to Numerical Indices in Pandas?

Pandas: Konvertieren Sie Kategorien in numerische Indizes

In Pandas können Situationen auftreten, in denen Sie kategoriale Daten wie Länder, in numerische Indizes umwandeln. Obwohl pd.get_dummies Kategorien in One-Hot-Codierungen konvertieren kann, ist dies möglicherweise nicht immer die effizienteste Lösung. Hier ist eine Schritt-für-Schritt-Anleitung zum Konvertieren von Kategorien in numerische Indizes:

Schritt 1: Kategorisieren Sie die Spalte

Ändern Sie zunächst den Typ der Spalte in kategorisch:

<code class="python">df.cc = pd.Categorical(df.cc)</code>
Nach dem Login kopieren

Dies wandelt die Länderspalte in eine kategoriale Spalte um, gekennzeichnet durch pd.Categorical(column_name).

Schritt 2: Erstellen Sie eine neue Spalte für Codes

Als nächstes erstellen Sie eine neue Spalte zum Speichern der numerischen Indizes:

<code class="python">df['code'] = df.cc.codes</code>
Nach dem Login kopieren

Das Codes-Attribut der kategorialen Spalte weist jeder Kategorie einen eindeutigen ganzzahligen Index zu.

Beispiel:

Betrachten Sie den folgenden DataFrame:

   cc  temp
0  US  37.0
1  CA  12.0
2  US  35.0
3  AU  20.0
Nach dem Login kopieren

Nachdem Sie die obigen Schritte ausgeführt haben, erhalten Sie einen neuen DataFrame:

   cc  temp  code
0  US  37.0     2
1  CA  12.0     1
2  US  35.0     2
3  AU  20.0     0
Nach dem Login kopieren

Zusätzliche Optionen:

  • Codes abrufen, ohne den DataFrame zu ändern: df.cc.astype('category').codes
  • Kategoriale Spalte als Index erstellen: df2 = pd.DataFrame(df.temp); df2.index = pd.CategoricalIndex(df.cc)

Das obige ist der detaillierte Inhalt vonWie konvertiert man kategoriale Daten in Pandas in numerische Indizes?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!