Numpy中的按轴求和

您所在的位置:网站首页 按条件求和的方法是什么 Numpy中的按轴求和

Numpy中的按轴求和

2024-07-01 18:57| 来源: 网络整理| 查看: 265

Numpy中的按轴求和

在本文中,我们将介绍Numpy中按轴求和的概念、用法以及一些具体的实例。

阅读更多:Numpy 教程

按轴求和的概念

Numpy是一款Python科学计算的基础库。它是Python中数值计算的基石,并为大量Python库提供了数值计算基础。Numpy可以用于一维数组、二维数组甚至多维数组的计算。其中一个非常常见的数组操作就是求和。但是对于多维数组而言,求和不同于一维数组,因为多维数组可以按多个轴,也就是维度进行求和。在Numpy中,我们可以通过sum方法实现按轴求和的功能。其函数签名如下:

numpy.sum(a, axis=None, dtype=None, out=None, keepdims=False, initial=0, where=True)

其中,a为数组;axis为沿着哪个轴进行求和;dtype是返回数组的类型;out是返回数组的引用;keepdims指定是否保留原数组的维度;initial是累加的初始值;where是布尔型数组,指定哪些元素参与计算。

按轴求和的用法

下面是一些按轴求和的使用示例:

对于一维数组 import numpy as np a = np.array([1, 2, 3, 4]) # 不指定axis等同于axis=None sum_a = np.sum(a) print(sum_a) # 输出:10 # 沿着第一维求和,等同于上方的结果 sum_a_axis0 = np.sum(a, axis=0) print(sum_a_axis0) # 输出:10 对于二维数组 b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # 不指定axis等同于axis=None sum_b = np.sum(b) print(sum_b) # 输出: 45 # 沿着第一维求和 sum_b_axis0 = np.sum(b, axis=0) print(sum_b_axis0) # 输出:[12, 15, 18] # 沿着第二维求和 sum_b_axis1 = np.sum(b, axis=1) print(sum_b_axis1) # 输出:[6, 15, 24]

可以看到,按第一维和第二维求和所得的结果是不同的。这是因为按axis=0对每列求和,得到了列的和;而按axis=1对每行进行求和,得到的是行的和。

对于三维数组 c = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) # 不指定axis等同于axis=None sum_c = np.sum(c) print(sum_c) # 输出:36 # 沿着第一维求和 sum_c_axis0 = np.sum(c, axis=0) print(sum_c_axis0) # 输出: # [[ 6 8] # [10 12]] # 沿着第二维求和 sum_c_axis1 = np.sum(c, axis=1) print(sum_c_axis1) # 输出: # [[ 4 6] # [12 14]] # 沿着第三维求和 sum_c_axis2 = np.sum(c, axis=2) print(sum_c_axis2) # 输出: # [[ 3 7] # [11 15]]

按axis=0,按照行的维度一次求和,等同于加上每个二维数组的元素的值;按axis=1,按照列的维度一次求和;按axis=2,按照深度的维度一次求和。

总结

本文介绍了Numpy中按轴求和的概念、用法以及实例。对于多维数组而言,按轴求和是非常常见的操作,通过Numpy的sum方法可以很方便地实现。在实际应用中,我们需要根据具体的需求,选择合适的轴进行求和,以得到正确的结果。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3