其他分享
首页 > 其他分享> > Numpy

Numpy

作者:互联网

数组的轴

这是一个非常重要的概念,也是 NumPy 数组中最不好理解的一个概念。它经常出现在 np.sum()、np.max() 这样关键的聚合函数中。我们用这样一个问题引出,同一个函数如何根据轴的不同来获得不同的计算结果呢?比如现在有一个 (4,3) 的矩阵,存放着 4 名同学关于 3 款游戏的评分数据。

>>>interest_score = np.random.randint(10, size=(4, 3))
>>>interest_score
array([[4, 7, 5],
       [4, 2, 5],
       [7, 2, 4],
       [1, 2, 4]])

第一个需求是,计算每一款游戏的评分总和。这个问题如何解决呢,我们一起分析一下。数组的轴即数组的维度,它是从 0 开始的。对于我们这个二维数组来说,有两个轴,分别是代表行的 0 轴与代表列的 1 轴。如下图所示。

 

我们的问题是要计算每一款游戏的评分总和,也就是沿着 0 轴的方向进行求和。所以,我们只需要在求和函数中指定沿着 0 轴的方向求和即可。

>>> np.sum(interest_score, axis=0)
array([16, 13, 18])

 同理1轴也如此,只需将参数axis = 0 修改为 1 即可

二维数组还是比较好理解的,那多维数据该怎么办呢?你有没有发现,其实当 axis=i 时,就是按照第 i 个轴的方向进行计算的,或者可以理解为第 i 个轴的数据将会被折叠或聚合到一起。

 

标签:数组,求和,score,interest,np,Numpy,axis
来源: https://www.cnblogs.com/zhang346458/p/Numpy_.html