NumPy中的许多函数都要求你指定一个轴来应用某种计算。
通常情况下,以下经验法则适用。
- axis=0: 应用计算为 "列式"。
- axis=1: 应用 "行 "的计算。
下面的图片显示了一个2行4列的NumPy矩阵上的坐标轴的可视化表示。
下面的例子展示了如何在不同的情况下用下面的NumPy矩阵使用轴参数。
import numpy as np
#create NumPy matrix
my_matrix = np.matrix([[1, 4, 7, 8], [5, 10, 12, 14]])
#view NumPy matrix
my_matrix
matrix([[ 1, 4, 7, 8],
[ 5, 10, 12, 14]])
例子1:寻找不同轴上的平均值
我们可以使用axis=0来查找NumPy矩阵中每一列的平均值。
#find mean of each column in matrix
np.mean(my_matrix, axis=0)
matrix([[ 3. , 7. , 9.5, 11. ]])
输出显示了矩阵中每一列的平均值。
比如说。
- 第一列的平均值是(1+5)/2=3。
- 第二列的平均值是(4 + 10) / 2 =7。
以此类推。
我们也可以用axe=1来找出矩阵中每一行的平均值。
#find mean of each row in matrix
np.mean(my_matrix, axis=1)
matrix([[ 5. ],
[10.25]])
输出显示矩阵中每一行的平均值。
比如说。
- 第一行的平均值是(1+4+7+8)/4=5。
- 第二行的平均值是(5+10+12+14) / 4 =10.25。
例2:沿着不同的轴求和
我们可以用axis=0来求矩阵中每一列的总和。
#find sum of each column in matrix
np.sum(my_matrix, axis=0)
matrix([[ 6, 14, 19, 22]])
输出显示矩阵中每一列的总和。
比如说
- 第一列的总和是1+5=6。
- 第二列的总和是4+10=14。
以此类推。
我们也可以用axe=1来找出矩阵中每一行的总和。
#find sum of each row in matrix
np.sum(my_matrix, axis=1)
matrix([[20],
[41]])
输出显示矩阵中每一行的总和。
比如说
- 第一行的总和是1+4+7+8=20。
- 第二行的总和是5+10+12+14=41。
其他资源
下面的教程解释了如何在NumPy中进行其他常见操作。
如何用随机数创建NumPy矩阵
如何将NumPy矩阵归一化
如何在NumPy中向矩阵添加行
The postA Simple Explanation of NumPy Axes (With Examples) appeared first onStatology.