So normalisieren sie eine numpy-matrix: mit beispielen


Beim Normalisieren einer Matrix werden die Werte so skaliert, dass der Bereich der Zeilen- oder Spaltenwerte zwischen 0 und 1 liegt.

Der einfachste Weg, die Werte einer NumPy-Matrix zu normalisieren, ist die Verwendung der normalize()- Funktion aus dem sklearn-Paket, die die folgende grundlegende Syntax verwendet:

 from sklearn. preprocessing import normalize

#normalize rows of matrix
normalize(x, axis= 1 , norm=' l1 ')

#normalize columns of matrix
normalize(x, axis= 0 , norm=' l1 ')

Die folgenden Beispiele zeigen, wie Sie diese Syntax in der Praxis anwenden können.

Beispiel 1: Normalisieren Sie die Zeilen der NumPy-Matrix

Angenommen, wir haben die folgende NumPy-Matrix:

 import numpy as np

#create matrix
x = np. arange (0, 36, 4). reshape (3,3)

#view matrix
print (x)

[[ 0 4 8]
 [12 16 20]
 [24 28 32]]

Der folgende Code zeigt, wie die Zeilen der NumPy-Matrix normalisiert werden:

 from sklearn. preprocessing import normalize

#normalize matrix by rows
x_normed = normalize(x, axis= 1 , norm=' l1 ')

#view normalized matrix
print (x_normed)

[[0. 0.33333333 0.66666667]
 [0.25 0.33333333 0.41666667]
 [0.28571429 0.33333333 0.38095238]]

Beachten Sie, dass sich die Werte in jeder Zeile jetzt zu eins addieren.

  • Summe der ersten Zeile: 0 + 0,33 + 0,67 = 1
  • Summe der zweiten Zeile: 0,25 + 0,33 + 0,417 = 1
  • Summe der dritten Zeile: 0,2857 + 0,3333 + 0,3809 = 1

Beispiel 2: Normalisieren Sie die Spalten der NumPy-Matrix

Angenommen, wir haben die folgende NumPy-Matrix:

 import numpy as np

#create matrix
x = np. arange (0, 36, 4). reshape (3,3)

#view matrix
print (x)

[[ 0 4 8]
 [12 16 20]
 [24 28 32]]

Der folgende Code zeigt, wie die Zeilen der NumPy-Matrix normalisiert werden:

 from sklearn. preprocessing import normalize

#normalize matrix by columns
x_normed = normalize(x, axis= 0 , norm=' l1 ')

#view normalized matrix
print (x_normed)

[[0. 0.08333333 0.13333333]
 [0.33333333 0.33333333 0.33333333]
 [0.66666667 0.58333333 0.53333333]]

Beachten Sie, dass sich die Werte in jeder Spalte jetzt zu eins addieren.

  • Summe der ersten Spalte: 0 + 0,33 + 0,67 = 1
  • Summe der zweiten Spalte: 0,083 + 0,333 + 0,583 = 1
  • Summe der dritten Spalte: 0,133 + 0,333 + 0,5333 = 1

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in Python ausführen:

So normalisieren Sie Arrays in Python
So normalisieren Sie Spalten in einem Pandas DataFrame

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert