如何在Python的NumPy中对数组进行标准化

  • Post category:Python

在Python的NumPy库中,可以通过将数组标准化来将数组的值转换为标准正态分布。标准正态分布具有均值为0,方差为1的特性,常常用于数据分析与统计领域。下面将介绍如何在NumPy中对数组进行标准化。

1. 导入NumPy库

首先,需要导入NumPy库。

import numpy as np

2. 定义数组

接下来,需要定义一个待标准化的数组。

arr = np.array([1, 2, 3, 4, 5])

3. 计算均值和标准差

使用NumPy的mean()函数和std()函数计算数组的均值和标准差。

mean = np.mean(arr)
std = np.std(arr)

4. 标准化数组

使用NumPy的subtract()函数和divide()函数标准化数组。

arr_normalized = np.divide(np.subtract(arr, mean), std)

其中,subtract()函数用于减去均值,divide()函数用于除以标准差,得到标准化后的数值。

示例一

# 导入NumPy库
import numpy as np

# 定义数组
arr = np.array([1, 2, 3, 4, 5])

# 计算均值和标准差
mean = np.mean(arr)
std = np.std(arr)

# 标准化数组
arr_normalized = np.divide(np.subtract(arr, mean), std)
print(arr_normalized)

输出结果:

[-1.41421356 -0.70710678  0.          0.70710678  1.41421356]

示例二

# 导入NumPy库
import numpy as np

# 定义数组
arr = np.array([[1, 2], [3, 4]])

# 计算均值和标准差
mean = np.mean(arr)
std = np.std(arr)

# 标准化数组
arr_normalized = np.divide(np.subtract(arr, mean), std)
print(arr_normalized)

输出结果:

[[-1.34164079 -0.4472136 ]
 [ 0.4472136   1.34164079]]

以上就是在Python的NumPy中对数组进行标准化的完整攻略。通过本文的介绍,相信读者已经掌握了如何使用NumPy库标准化数组的方法。