使用NumPy将每一行除以一个向量元素
下面的文章描述了Numpy数组的行如何被一个矢量元素所分割。矢量元素可以是单个元素,多个元素,或一个数组。采用除法运算符( / )来产生所需的功能。我们可以用向量元素分割一维、二维甚至更多类型的数组的行,下面的例子将帮助你更好地理解。
示例 1:
# Importing Numpy module
import numpy as np
# Creating 1-D Numpy array
n_arr = np.array([20, 30, 40])
print("Given 1-D Array:")
print(n_arr)
# Vector element
vec = np.array([12])
print("\nVector element:")
print(vec)
# Dividing rows of 1-D array with vector element
print("\nResultant Array")
print(n_arr / vec[:,None])
输出:
在上面的例子中,我们用矢量元素划分一维Numpy数组的行,即[15] 。
示例 2:
# Importing Numpy module
import numpy as np
# Creating 2-D Numpy array
n_arr = np.array([[20, 35, 40],
[10, 51, 25]])
print("Given 2-D Array:")
print(n_arr)
# Vector element
vec = np.array([2.5])
print("\nVector element:")
print(vec)
# Dividing rows of 2-D array with vector element
print("\nResultant Array")
print(n_arr / vec[:,None])
输出:
在上面的例子中,我们用矢量元素划分二维Numpy数组的行,即【2.5】。
示例 3:
# Importing Numpy module
import numpy as np
# Creating 3-D Numpy array
n_arr = np.array([[[10, 25], [30, 45]],
[[50, 65], [70, 85]]])
print("Given 3-D Array:")
print(n_arr)
# Vector element
vec = np.array([3, 3])
print("\nVector element:")
print(vec)
# Dividing rows of 3-D array with vector element
print("\nResultant Array")
print(n_arr / vec[:,None])
输出:
在上面的例子中,我们用矢量元素划分了3-D Numpy数组的行,即[3, 3] 。