Як нормалізувати матрицю numpy: з прикладами
Нормалізація матриці означає масштабування значень таким чином, щоб діапазон значень рядка або стовпця був між 0 і 1.
Найпростіший спосіб нормалізувати значення матриці NumPy – це використовувати функцію normalize() з пакету sklearn, яка використовує наступний базовий синтаксис:
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 ')
Наступні приклади показують, як використовувати цей синтаксис на практиці.
Приклад 1: нормалізуйте рядки матриці NumPy
Припустимо, що ми маємо таку матрицю NumPy:
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]]
Наступний код показує, як нормалізувати рядки матриці NumPy:
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]]
Зверніть увагу, що значення в кожному рядку тепер дорівнюють одиниці.
- Сума першого рядка: 0 + 0,33 + 0,67 = 1
- Сума другого рядка: 0,25 + 0,33 + 0,417 = 1
- Сума третього рядка: 0,2857 + 0,3333 + 0,3809 = 1
Приклад 2: нормалізуйте стовпці матриці NumPy
Припустимо, що ми маємо таку матрицю NumPy:
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]]
Наступний код показує, як нормалізувати рядки матриці NumPy:
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]]
Зверніть увагу, що значення в кожному стовпці тепер дорівнюють одиниці.
- Сума першого стовпця: 0 + 0,33 + 0,67 = 1
- Сума другого стовпця: 0,083 + 0,333 + 0,583 = 1
- Сума третього стовпця: 0,133 + 0,333 + 0,5333 = 1
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в Python:
Як нормалізувати масиви в Python
Як нормалізувати стовпці в Pandas DataFrame