MATLAB求和函数

news2024/11/15 9:40:34

语法

S = sum(A)
S = sum(A,“all”)
S = sum(A,dim)
S = sum(A,vecdim)
S = sum(,outtype)
S = sum(
,nanflag)

说明
示例
S = sum(A) 返回沿大小大于 1 的第一个数组维度计算的元素之和。

如果 A 是向量,则 sum(A) 返回元素之和。

如果 A 是矩阵,则 sum(A) 将返回包含每列总和的行向量。

如果 A 是多维数组,则 sum(A) 沿大小大于 1 的第一个数组维度计算,并将这些元素视为向量。此维度中 S 的大小变为 1,而所有其他维度的大小仍与在 A 中相同。

如果 A 是表或时间表,则 sum(A) 返回一个包含每个变量总和的单行表。 (自 R2023a 起)

示例
S = sum(A,“all”) 返回 A 的所有元素的总和。

示例
S = sum(A,dim) 沿维度 dim 返回总和。例如,如果 A 为矩阵,则 sum(A,2) 返回包含每一行总和的列向量。

示例
S = sum(A,vecdim) 根据向量 vecdim 中指定的维度对 A 的元素求和。例如,如果 A 是矩阵,则 sum(A,[1 2]) 返回 A 中所有元素的总和,因为矩阵的每个元素包含在由维度 1 和 2 定义的数组切片中。

示例
S = sum(___,outtype) 使用上述语法中的任何输入参量返回指定数据类型的总和。outtype 可以是 “default”、“double” 或 “native”。

示例
S = sum(___,nanflag) 指定包含还是省略 A 中的 NaN 值。例如,sum(A,“omitnan”) 在计算总和时会忽略 NaN 值。默认情况下,sum 包括 NaN 值。

示例
全部折叠
向量元素的总和
创建一个向量并计算各个元素的总和。

A = 1:10;
S = sum(A)
S = 55
矩阵列总和
创建一个矩阵并计算每列中元素的总和。

A = [1 3 2; 4 2 5; 6 1 4]
A = 3×3

 1     3     2
 4     2     5
 6     1     4

S = sum(A)
S = 1×3

11     6    11

矩阵行总和

创建一个矩阵并计算每行中元素的总和。

A = [1 3 2; 4 2 5; 6 1 4]
A = 3×3

 1     3     2
 4     2     5
 6     1     4

S = sum(A,2)
S = 3×1

 6
11
11

数组切片总和

使用向量维度参量来操作数组的特定切片。

创建所有元素为 1 的三维数组。

A = ones(4,3,2);
要对 A 的每个页中的所有元素求和,请使用向量维度参量指定要求和的维度(行和列)。两个页均为 4×3 的全 1 矩阵,因此每页的总和为 12。

S1 = sum(A,[1 2])
S1 =
S1(:,:,1) =

12

S1(:,:,2) =

12

如果沿第一个维度对 A 进行切片,则可以对得到的 4 个页的元素求和,每个页为 3×2 矩阵。

S2 = sum(A,[2 3])
S2 = 4×1

 6
 6
 6
 6

沿第二个维度切片,每个页的总和是一个 4×2 矩阵的元素之和。

S3 = sum(A,[1 3])
S3 = 1×3

 8     8     8

要计算一个数组的所有维度上的和,可以在向量维参量中指定每个维度,或使用 “all” 选项。

S4 = sum(A,[1 2 3])
S4 = 24
Sall = sum(A,“all”)
Sall = 24

三维数组的总和

创建一个由 1 值组成的 4×2×3 数组,并计算沿第三个维度的总和。

A = ones(4,2,3);
S = sum(A,3)
S = 4×2

 3     3
 3     3
 3     3
 3     3

32 位整数之和

创建一个由 32 位整数组成的向量,并通过将输出类型指定为 native 来计算其元素的 int32 总和。

A = int32(1:10);
S = sum(A,“native”)
S = int32
55
排除缺失值的总和
创建一个包含 NaN 值的矩阵。

A = [1.77 -0.005 NaN -2.95; NaN 0.34 NaN 0.19]
A = 2×4

1.7700   -0.0050       NaN   -2.9500
   NaN    0.3400       NaN    0.1900

计算矩阵的总和,不包括 NaN 值。对于包含任一 NaN 值的矩阵列,sum 使用非 NaN 元素进行计算。对于包含的值都是 NaN 的矩阵列,总和为 0。

S = sum(A,“omitnan”)
S = 1×4

1.7700    0.3350         0   -2.7600

输入参数
全部折叠
A — 输入数组
向量 | 矩阵 | 多维数组 | 表 | 时间表
输入数组,指定为向量、矩阵、多维数组、表或时间表。

如果 A 是标量,则 sum(A) 返回 A。

如果 A 为 0×0 空矩阵,则 sum(A) 返回 0。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | duration | table | timetable
复数支持: 是

dim — 沿其运算的维度
正整数标量
沿其运算的维度,指定为正整数标量。如果不指定维度,则默认为第一个大于 1 的数组维度。

维度 dim 表示长度减至 1 的维度。size(S,dim) 为 1,而所有其他维度的大小保持不变。

以一个二维输入数组 A 为例:

sum(A,1) 对 A 的列中的连续元素进行求和并返回一个包含每列之和的行向量。

sum(A,1) column-wise computation.

sum(A,2) 对 A 的行中的连续元素进行求和并返回一个包含每行之和的列向量。

sum(A,2) row-wise computation.

当 dim 大于 ndims(A) 或者 size(A,dim) 为 1 时,sum 返回 A。

数据类型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

vecdim — 维度向量

正整数向量
维度向量,指定为正整数向量。每个元素代表输入数组的一个维度。指定的操作维度的输出长度为 1,而其他保持不变。

以 2×3×3 输入数组 A 为例。然后 sum(A,[1 2]) 返回 1×1×3 数组,其元素是 A 的每个页的总和。
在这里插入图片描述

sum(A,[1 2]) collapses the pages of a 2-by-3-by-3 array into a 1-by-1-by-3 array.

数据类型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

outtype — 输出数据类型
“default” (默认) | “double” | “native”
输出数据类型,指定为 “default”、“double” 或 “native”。这些选项还指定执行运算采用的数据类型。

outtype 输出数据类型
“default” double,除非输入数据类型为 single、duration、table 或 timetable,在此情况下输出为 “native”
“double” double,除非数据类型为 duration、table 或 timetable,在此情况下不支持 “double”
“native” 与输入数据类型相同,除非输入数据类型为 char,在这种情况下不支持 “native”;或者,除非输入数据类型为 timetable,在这种情况下输出数据类型为 table
nanflag — 缺失值条件
“includemissing” (默认) | “includenan” | “omitmissing” | “omitnan”
缺失值条件,指定为下列值之一:

“includemissing” 或 “includenan” - 在计算总和时包括 A 中的 NaN 值。如果运算维度中的任一元素是 NaN,则 S 中的对应元素也是 NaN。“includemissing” 和 “includenan” 具有相同的行为。

“omitmissing” 或 “omitnan” - 忽略 A 中的 NaN 值,并基于较少的点计算总和。如果运算维度中的所有元素均为 NaN,则 S 中的对应元素为 0。“omitmissing” 和 “omitnan” 具有相同的行为。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1612685.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年网络安全行业:机遇与挑战并存

2023年全球网络安全人才概况 根据ISC2的《2023年全球网络安全人才调查报告》,全球的网络安全专业人才数量达到了550万,同比增长了8.7%。然而,这一年也见证了网络安全人才短缺达到了历史新高,缺口数量接近400万。尤其是亚太地区&am…

【题解】NC40链表相加(二)(链表 + 高精度加法)

https://www.nowcoder.com/practice/c56f6c70fb3f4849bc56e33ff2a50b6b?tpId196&tqId37147&ru/exam/oj class Solution {public:// 逆序链表ListNode* reverse(ListNode* head) {// 创建一个新节点作为逆序后链表的头节点ListNode* newHead new ListNode(0);// 当前…

Spring Boot中接收各种各样的参数

一、接收json参数&#xff0c;封装为Map 1.1、核心代码 /*** 接收json参数&#xff0c;封装为Map* param servletRequest* return* throws Exception*/ PostMapping("/getParam") public R getParam(HttpServletRequest servletRequest) throws Exception {Map<…

MyCat 分片

一、垂直拆分 1、场景概述&#xff1a; 在业务系统中&#xff0c;由于用户与订单每天都会产生大量的数据&#xff0c;单台服务器的数据存储及处理能力是有限的&#xff0c;可以对数据库表进行进行垂直分库操作。将商品相关的表拆分到一个数据库服务器&#xff0c;订单表拆分到…

Spring(下)

接上篇&#xff0c;从第八个问题讲起 八.Spring工厂创建复杂对象 1.什么是复杂对象 简单对象就是可以直接new出来的&#xff0c;也就是直接调用构造方法创建 所以复杂对象就是不能直接通过调用构造方法创建。就比如JDBC中的Connection 2.三种方法 &#xff08;1&#xff…

【LeetCode刷题记录】206. 反转链表

206 反转链表 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;[5,4,3,2,1] 示例 2&#xff1a; 输入&#xff1a;head [1,2] 输出&#xff1a;[2,1] 示例…

毕业设计——基于ESP32的智能家居系统(语音识别、APP控制)

ESP32嵌入式单片机实战项目 一、功能演示二、项目介绍1、功能演示2、外设介绍 三、资料获取 一、功能演示 多种控制方式 ① 语音控制 ②APP控制 ③本地按键控制 ESP32嵌入式单片机实战项目演示 二、项目介绍 1、功能演示 这一个基于esp32c3的智能家居控制系统&#xff0c;能实…

MyCat 数据库中间件

一、介绍 1、单数据库进行数据存储的问题&#xff1a; IO瓶颈&#xff1a;热点数据太多&#xff0c;数据库缓存不足以容纳这些热点数据&#xff0c;产生大量磁盘IO&#xff0c;效率较低。 CPU瓶颈&#xff1a;排序、分组、连接查询、聚合统计等SQL会耗费大量的CPU资源。 2、…

Rest接口/Nginx日志记录和采集

文章目录 一、Rest接口日志二、Nginx日志三、采集日志四、夜莺查看Nginx日志五、夜莺查看Rest接口日志 一、Rest接口日志 记录日志字典定义 接口URL接口名称,类别,入参全记录,出参全记录,入参字段1:中文名1/入参字段2:中文名2,出参字段1:中文名1/test/api/login账户登录,登录…

【C++】开始使用优先队列

送给大家一句话: 这世上本来就没有童话&#xff0c;微小的获得都需要付出莫大的努力。 – 简蔓 《巧克力色微凉青春》 开始使用优先队列 1 前言2 优先队列2.1 什么是优先队列2.2 使用手册2.3 仿函数 3 优先队列的实现3.1 基本框架3.2 插入操作3.3 删除操作3.4 其他函数 4 总结T…

kubernetes的网络通信实现原理

网络原理 Kubernetes网络原理详解&#xff1a;一、Kubernetes 网络实现1.容器到容器&#xff08;同一Pod内&#xff09;通信流程&#xff1a;2. pod之间的通信&#xff08;以Calico为例&#xff09;&#xff1a; 二、CNI 网络模型三、网络策略四、开源的容器网络方案五、 常见网…

Linux管道共享内存

前言 进程虽然是独立运行的个体&#xff0c;但它们之间有时候需要协作才能完成一项工作&#xff0c;比如有两个进程需要同步数据&#xff0c;进程 A 把数据准备好后&#xff0c;想把数据发往进程 B&#xff0c;进程 B 必须被提前通知有数据即将到来&#xff0c;或者进程 A 想发…

Spark集群的搭建

1.1搭建Spark集群 Spark集群环境可分为单机版环境、单机伪分布式环境和完全分布式环境。本节任务是学习如何搭建不同模式的Spark集群&#xff0c;并查看Spark的服务监控。读者可从官网下载Spark安装包&#xff0c;本文使用的是spark-2.0.0-bin-hadoop2.7.gz。 1.1.1搭建单机版…

《乱弹篇(30)厌战的杜诗》

时下地球村有一伙成天叫嚣着“打打杀杀”、鼓吹快快发动战争的狂人&#xff0c;他们视老百姓的生命如草芥&#xff0c;毫不珍惜。没有遭受过战火焚烧的人&#xff0c;也跟着成天吠叫“快开战吧”。然而中国唐朝大诗人却是个“厌战派”&#xff0c;他对战争的厌恶集中表现在诗《…

实在RPA设计器试用导引

一、产品概述 实在RPA设计器是一款将人工智能(AI)与机器人流程自动化(RPA)深度融合的可视化自动流程编辑器。它通过AI推荐与桌面嵌入式交互&#xff0c;极大简化了RPA的使用难度&#xff0c;让普通业务人员也能轻松使用。实在RPA设计器具备以下核心优势&#xff1a; 兼容性&a…

我与C++的爱恋:类和对象(四)

​ ​ &#x1f525;个人主页&#xff1a;guoguoqiang. &#x1f525;专栏&#xff1a;我与C的爱恋 ​ 朋友们大家好&#xff01;本篇是类和对象的最后一个部分。 一、static成员 声明为static的类成员称为类的静态成员&#xff0c;用static修饰的成员变量&#xff0c;称之…

系统架构最佳实践 -- 相关JAVA架构

1. java 类加载器架构 2. JVM 架构 3. Java 技术体系 4. 线程运行架构 5. Java 体系&#xff08;编译与运行&#xff09;结构 6. JMS 技术架构 7. JMX 技术架构 8. Spring 架构 9. Hibernate 架构 10. ibatis 架构 11. Struts2 架构 12. Struts1 架构 13. JBPM 14. EJB 技术架构…

Java面试八股之marshalling和demarshalling

marshalling和demarshalling Marshalling&#xff08;序列化&#xff09;是将内存中的对象状态转化为适合传输或存储的格式&#xff08;如字节流、JSON、XML&#xff09;&#xff0c;以便进行网络通信、持久化存储或跨平台/语言交互操作。Demarshalling&#xff08;反序列化&a…

渗透测试入门教程,从零基础入门到精通(非常详细)

目录 什么是渗透测试 渗透测试的重要性 渗透测试的前置技能 开始入门学习路线 什么是渗透测试 渗透测试&#xff0c;通常被视为模拟黑客的一种安全评估行为&#xff0c;其目的在于全面挖掘目标网站或主机的潜在安全漏洞。与真实的黑客攻击不同&#xff0c;渗透测试旨在发现…

9.MMD 基础内容总结及制作成品流程

前期准备 1. 导入场景和模型 在左上角菜单栏&#xff0c;显示里将编辑模型时保持相机和光照勾选上&#xff0c;有助于后期调色 将抗锯齿和各向异性过滤勾掉&#xff0c;可以节省资源&#xff0c;避免bug 在分辨率设定窗口&#xff0c;可以调整分辨率 3840x2160 4k分辨率 1…