返回顶部
首页 > 资讯 > 后端开发 > Python >numpy.sum()的使用详解
  • 527
分享到

numpy.sum()的使用详解

2024-04-02 19:04:59 527人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

numpy的sum函数可接受的参数是: sum(a, axis=None, dtype=None, out=None, keepdims=np._NoValue) 在参数列表中

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()使用内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: numpy.sum()的使用详解

本文链接: https://lsjlt.com/news/121469.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • numpy.sum()的使用详解
    numpy的sum函数可接受的参数是: sum(a, axis=None, dtype=None, out=None, keepdims=np._NoValue) 在参数列表中...
    99+
    2024-04-02
  • 如何正确的使用numpy.sum()
    这篇文章给大家介绍如何正确的使用numpy.sum(),内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。numpy的sum函数可接受的参数是:sum(a, axis=None, dtype=None,&...
    99+
    2023-06-15
  • 如何正确的使用numpy.sum()函数
    如何正确的使用numpy.sum()函数?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。sum(a, axis=None, dtype=Non...
    99+
    2023-06-08
  • numpy.sum()坐标轴问题的解决
    目录示例总结由于本人在实际应用中遇到了有关 numpy.sum() 函数参数 axis 的问题,这里特来记录一下。也供大家参考。 示例 代码如下: import numpy as n...
    99+
    2023-03-13
    numpy.sum()坐标轴 numpy 坐标轴
  • 详解MySqlBulkLoader的使用
    目录一、mysqlBulkLoader的使用二、MySqlBulkLoader使用过程中出现的问题1、Mysql数据库不支持加载本地文件数据2、数据库和项目是分别放在不同服务器上mysql数据库:最近要写一个服务,跨库数...
    99+
    2022-07-14
    MySqlBulkLoader使用 MySqlBulkLoader
  • React.cloneElement的使用详解
    目录cloneElement 的作用使用场景添加新的 props修改 props 的事件定制样式添加 key总结因为要接手维护一些项目,团队的技术栈最近从 vue 转向 react ...
    99+
    2024-04-02
  • 详解log4net的使用
    log4net是一个开源的日志记录框架,用于将应用程序的日志输出到不同的目标(如文件、数据库、控制台等)。它提供了灵活的配置选项,可...
    99+
    2023-09-15
    log4net
  • MySQL sql_mode的使用详解
    前言 相信看过上一篇文章《MySQL案例:一个数据丢失惨案》的童鞋,都应该意识到,sql_mode是一个非常关键的配置,接下来就带来该配置项的详细解析。 sql_mode详解 sql_mode,会直接影响SQL语...
    99+
    2022-05-19
    MySQL sql_mode MySQL sql_mode的使用
  • 详解Android Handler的使用
    目录Handler概要构造器sendMessageAtTimedispatchMessageThreadLocalLooperMessageQueueIdleHandlerAsync...
    99+
    2024-04-02
  • Android ViewBinding的使用详解
    目录一、什么是view binding 设置说明 二、基本用法 Activity中使用 Fragment 中使用 Adapter 中使用三、了解源码实现 BaseActivityBa...
    99+
    2024-04-02
  • Android Room的使用详解
    目录1、导入配置2、创建表3、创建Dao4、创建数据库5、使用官网介绍:developer.android.google.cn/training/da… Room 是在 SQLite...
    99+
    2024-04-02
  • c# dynamic的使用详解
    目录类型转换方法中含有dynamic类型参数的重载问题dynamic可以简化反射。dynamic是FrameWork4.0的新特性。dynamic的出现让C#具有了弱语言类型的特性。...
    99+
    2024-04-02
  • MongoDB balancer的使用详解
    目录01 balancer简介02 balancer工作中可能对业务造成的影响?03 设置balancer的执行时间窗口04 备份和balancer   在Mon...
    99+
    2024-04-02
  • Spring JDBC的使用详解
    目录JDBC介绍DriverManagerConnectionStatement/PreparedStatementResultSetJDBC访问数据库流程配置数据源使用JDBC操纵...
    99+
    2024-04-02
  • Java ThreadLocal的使用详解
    目录1. 应用场景1.1. 保障线程安全1.2. 显示传递参数2. 实现原理3. 注意事项ThreadLocal是线程私有的局部变量存储容器,可以理解成每个线程都有自己专属的存储容器...
    99+
    2024-04-02
  • Android ProductFlavor的使用详解
    目录前言 productFlavorsflavorDimensions多纬度前言 最近一直在学习Android Gradle 相关的知识点,今天刚好看到了 ProductFlavo...
    99+
    2024-04-02
  • Android Handler的使用详解
    在Android开发中,我们经常会遇到这样一种情况:在UI界面上进行某项操作后要执行一段很耗时的代码,比如我们在界面上点击了一个”下载“按钮,那么我们需要执行网络请求,这是一个耗时操...
    99+
    2024-04-02
  • Python yield的使用详解
    目录如何生成斐波那契數列return 的作用另一个例子总结如何生成斐波那契數列 斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两...
    99+
    2024-04-02
  • Java CompletableFuture的使用详解
    目录CompletableFuture​任务开启任务结束串行任务thenApply\thenApplyAsync 串行将异步结果进行同步\异步的处理handle\hand...
    99+
    2024-04-02
  • Python Playwright的使用详解
    目录实战场景实战操作实战场景 本篇博客为大家介绍一款新的自动化测试工具,效果类似 selenium,但是这个模块年轻。 模块名称为 playwright-python,微软开源的,是...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作