Datenwerte in Pandas faktorisieren

Preet Sanghavi 21 Juni 2023
Datenwerte in Pandas faktorisieren

In diesem Tutorial lernen wir, Pandas zu faktorisieren. Wir werden die Funktion pandas.factorize() verwenden, um die Aufgabe auszuführen.

Durch das Erkennen unterschiedlicher Werte hilft die Methode pandas.factorize() dabei, die numerische Darstellung eines Arrays zu erhalten.

Zuerst werden wir die Bibliotheken Pandas und numpy sowie andere benötigte Bibliotheken importieren.

import numpy as np
import pandas as pd
from pandas.api.types import CategoricalDtype

Verwenden Sie die pandas.factorize()-Funktion in Pandas

Jetzt übergeben wir eine Liste mit den Zeichen an die Funktion factorize(), die uns die Labels und die eindeutigen Werte zurückgibt. Wir werden die Labels und eindeutigen Werte separat ausgeben.

labels, uniques = pd.factorize(["b", "d", "d", "c", "a", "c", "a", "b"])

Der obige Code gibt uns die Liste der numerischen Darstellungen von Zeichen und der eindeutigen Werte zurück.

Lassen Sie uns die Ausgabe mit dem folgenden Code sehen.

print("Numeric Representation : \n", labels)
print("Unique Values : \n", uniques)
Numeric Representation :
 [0 1 1 2 3 2 3 0]
Unique Values :
 ['b' 'd' 'c' 'a']

Wir können das Alphabet auch mit dem folgenden Code sortieren.

labels, uniques = pd.factorize(["b", "d", "d", "c", "a", "c", "a", "b"], sort=True)

Wir werden die folgende Ausgabe für die obige Änderung haben.

Numeric Representation :
 [1 3 3 2 0 2 0 1]
Unique Values :
 ['a' 'b' 'c' 'd']

Wir können auch Kategorien verwenden, um die Datenwerte in eine Kategorie einzuteilen, und in diesem Fall unterscheiden sich die eindeutigen Werte. Zu diesem Zweck verwenden wir die Funktion pd.Categorical(), um unsere Datenwerte zu teilen.

a = pd.Categorical(["a", "a", "c"], categories=["a", "b", "c"])

label3, unique3 = pd.factorize(a)

Sehen wir uns nun die Ausgabe des obigen Codes an.

Numeric Representation :
 [0 0 1]
Unique Values :
 ['a', 'c']
Categories (3, object): ['a', 'b', 'c']

Wir können in der obigen Ausgabe sehen, dass unsere eindeutige Werteliste nur die eindeutigen Werte enthält.

Daher können wir die Datenwerte mithilfe von Pandas mit den folgenden Ansätzen faktorisieren.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub