numpy.sum()的使用详解

 更新时间:2021年03月11日 12:02:23   作者:Leekingsen  
这篇文章主要介绍了numpy.sum()的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

numpy的sum函数可接受的参数是:

sum(a, axis=None, dtype=None, out=None, keepdims=np._NoValue)

在参数列表中:
a是要进行加法运算的向量/数组/矩阵
axis的值可以为None,也可以为整数和元组
其形参的注释如下:

a : array_like elements to sum.

a:用于进行加法运算的数组形式的元素

axis : None or int or tuple of ints, optional
Axis or axes along which a sum is performed.
The default, axis=None, will sum all of the elements of the input array.
If axis is negative it counts from the last to the first axis.
If axis is a tuple of ints, a sum is performed on all of the axes
specified in the tuple instead of a single axis or all the axes as before.

根据上文,可知:

axis的取值有三种情况:1.None,2.整数, 3.整数元组。
(在默认/缺省的情况下,axis取None)
如果axis取None,即将数组/矩阵中的元素全部加起来,得到一个和。

Example:

>>> np.sum([0.5, 1.5])
2.0
>>> np.sum([0.5, 0.7, 0.2, 1.5], dtype=np.int32)
1
>>> np.sum([[0, 1], [0, 5]])
6

如果axis为整数,axis的取值不可大于数组/矩阵的维度,且axis的不同取值会产生不同的结果。

先以2×2的二维矩阵为例:

>>> np.sum([[0, 1], [0, 5]], axis=0)
array([0, 6])
>>> np.sum([[0, 1], [0, 5]], axis=1)
array([1, 5])

在上述例子中

  • 当axis为0时,是压缩行,即将每一列的元素相加,将矩阵压缩为一行
  • 当axis为1时,是压缩列,即将每一行的元素相加,将矩阵压缩为一列(这里的一列是为了方便理解说的,实际上,在控制台的输出中,仍然是以一行的形式输出的)

具体理解如图:

  • 当axis取负数的时候,对于二维矩阵,只能取-1和-2(不可超过矩阵的维度)。
  • 当axis=-1时,相当于axis=1的效果,当axis=-2时,相当于axis=0的效果。

如果axis为整数元组(x,y),则是求出axis=x和axis=y情况下得到的和。
继续以上面的2×2矩阵为例

>>>np.sum([[0,1],[0,5]],axis=(0,1))
>>>6
>>>np.sum([[0,1],[0,5]],axis=(1,0))
>>>6

另外,需要注意的是:如果要输入两个数组/矩阵/向量进行相加,那么就要先把两个数组/矩阵/向量用一个括号括起来,形成一个元组,这样才能够进行相加。因为numpy.sum的运算实现本质是通过矩阵内部的运算实现的。

当然,如果只是向量/数组之间做加法运算,可以直接让两个向量/数组相加,但前提是它们必须为numpy的array数组才可以,否则只是单纯的列表相加

Example:

>>>v1 = [1, 2]
>>>v2 = [3, 4]
>>>v1 + v2
[1, 2, 3, 4]

>>>v1 = numpy.array[1, 2]
>>>v2 = numpy.array[3, 4]
>>>v1 + v2
[4, 6]

到此这篇关于numpy.sum()的使用详解的文章就介绍到这了,更多相关numpy.sum()使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python实现多脚本处理定时运行

    Python实现多脚本处理定时运行

    这篇文章主要介绍了Python实现多脚本处理定时运行,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-06-06
  • Python实现朗读在线音频和本地音频

    Python实现朗读在线音频和本地音频

    在日常的Python软件开发中,我们经常会遇到一个非常重要的功能需求——让程序能够读取并显示文本内容,下面我们就来学习一下Python实现朗读音频的具体操作吧
    2024-03-03
  • PyMongo进行MongoDB查询和插入操作的高效使用示例

    PyMongo进行MongoDB查询和插入操作的高效使用示例

    这篇文章主要为大家介绍了PyMongo进行MongoDB查询和插入操作的高效使用示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Python流程控制语句的深入讲解

    Python流程控制语句的深入讲解

    这篇文章主要给大家介绍了关于Python流程控制语句的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • python高温预警数据获取实例

    python高温预警数据获取实例

    这篇文章主要为大家介绍了利用python获取高温数据进行高温预警的防护措施,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • python+opencv实现动态物体追踪

    python+opencv实现动态物体追踪

    这篇文章主要为大家详细介绍了python+opencv实现动态物体的追踪,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • Python数据处理的26个Pandas实用技巧总结

    Python数据处理的26个Pandas实用技巧总结

    这篇文章主要给大家分享一些pandas的实用技巧,共计26个,这些技巧在你做数据处理中必不可少,感兴趣的小伙伴可以跟随小编学习一下
    2022-02-02
  • 使用python实现将视频中的音频分离出来

    使用python实现将视频中的音频分离出来

    这篇文章主要介绍了使用python实现将视频中的音频分离出来,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • 完美解决pycharm导入自己写的py文件爆红问题

    完美解决pycharm导入自己写的py文件爆红问题

    今天小编就为大家分享一篇完美解决pycharm导入自己写的py文件爆红问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python GUI编程详解

    Python GUI编程详解

    这篇文章主要介绍了Python GUI编程,结合完整示例形式分析了Python基于tkinter模块的GUI图形界面编程相关实现技巧,需要的朋友可以参考下
    2021-10-10

最新评论