一 np.where()
np.where() 是 NumPy 库中的一个函数,它用于根据条件从两个数组中选择值。它的一般语法如下:
numpy.where(condition, x, y)
1.condition:一个布尔数组或条件,用于确定在输出中选择 x 还是 y 的元素。
2.x:一个数组,表示当 condition 中的元素为 True 时要选择的值。
3.y:一个数组,表示当 condition 中的元素为 False 时要选择的值。np.where() 函数根据 condition 中的值来选择 x 或 y 中的对应元素,从而创建一个新的数组,该数组的形状与 condition、x 和 y 相同。
以下是 np.where() 的示例用法:
import numpy as np
# 创建示例数组
arr = np.array([1, 2, 3, 4, 5])
# 创建条件数组
condition = arr > 3
# 使用np.where()根据条件选择值
result = np.where(condition, arr, 0)
print(result)
在这个示例中,condition 数组是 arr > 3,它包含了布尔值,表示在 arr 中哪些元素大于3。np.where() 根据条件从 arr 中选择对应的值,大于3的元素保持不变,小于等于3的元素被替换为0,因此输出是 [0 0 0 4 5]。
np.where() 可用于多维数组,它使条件选择和值替换变得非常方便。您可以根据不同的条件创建新的数组,或者根据条件来修改现有数组中的元素。
二 np.zeros()
np.zeros 是 NumPy 中的一个函数,用于创建一个由零组成的数组。这个函数的语法是:
numpy.zeros(shape, dtype=float, order='C')
其中:
1.shape 是一个整数或元组,表示数组的形状(维度)。
2.dtype 是数组的数据类型,可选参数,默认为 float。
3.order 指定数组元素在内存中的排列顺序,可以是'C'(按行),'F'(按列),默认是'C'。下面是一些用法解析的示例:
示例 1:创建一个标量(零维数组)
import numpy as np
scalar = np.zeros(()) # 创建一个零维数组,也就是一个标量
print(scalar)
# 输出:0.0
示例 2:创建一个一维数组
import numpy as np
array_1d = np.zeros(5) # 创建一个包含5个元素的一维数组
print(array_1d)
# 输出:[0. 0. 0. 0. 0.]
示例 3:创建一个二维数组
import numpy as np
array_2d = np.zeros((3, 4)) # 创建一个3行4列的二维数组
print(array_2d)
# 输出:
# [[0. 0. 0. 0.]
# [0. 0. 0. 0.]
# [0. 0. 0. 0.]]
示例 4:指定数据类型
import numpy as np
array_int = np.zeros((2, 2), dtype=int) # 创建一个包含整数的二维数组
print(array_int)
# 输出:
# [[0 0]
# [0 0]]
示例 5:指定排列顺序
import numpy as np
array_f_order = np.zeros((2, 3), order='F') # 创建一个按列排列的二维数组
print(array_f_order)
# 输出:
# [[0. 0. 0.]
# [0. 0. 0.]]
这些示例演示了 np.zeros 的一些基本用法。你可以根据自己的需求调整形状、数据类型和排列顺序。