cummin
累积最小值
说明
返回 M
= cummin(A
)A
的累积最小元素。
如果
A
是向量,则M
是具有相同大小和类型的向量,并且包含A
的累积最小值。如果
A
是矩阵,则M
是具有相同大小和类型的矩阵,并且包含A
的每列中的累积最小值。如果
A
是多维数组,则M
是具有相同大小和类型的数组,并且包含沿A
的第一个大小大于 1 的数组维度的累积最小值。如果
A
是表或时间表,则cummin(A)
返回包含每个变量的累积最小值的表或时间表。 (自 R2023a 起)
可在上述任一语法的基础上指定计算方向。例如,M
= cummin(___,direction
)cummin(A,2,"reverse")
通过从尾到头计算 A
的第二个维度返回 A
的累积最小值。
示例
向量中的累积最小值
计算 1×10 随机整数向量的累积最小值。
v = randi([0,10],1,10)
v = 1×10
8 9 1 10 6 1 3 6 10 10
M = cummin(v)
M = 1×10
8 8 1 1 1 1 1 1 1 1
矩阵列中的累积最小值
计算 3×3 矩阵的各列的累积最小值。
A = [3 5 2; 1 6 3; 7 8 1]
A = 3×3
3 5 2
1 6 3
7 8 1
M = cummin(A)
M = 3×3
3 5 2
1 5 2
1 5 1
矩阵行中的累积最小值
计算 3×3 矩阵的各行的累积最小值。
A = [3 5 2; 1 6 3; 7 8 1]
A = 3×3
3 5 2
1 6 3
7 8 1
M = cummin(A,2)
M = 3×3
3 3 2
1 1 1
7 7 1
反向累积最小值
计算 2×2×3 数组的第三个维度的累积最小值。将 direction
指定为 "reverse"
可从第三个维度的末尾向开头运算。
A = cat(3,[1 2; 3 4],[9 10; 11 12],[5 6; 7 8])
A = A(:,:,1) = 1 2 3 4 A(:,:,2) = 9 10 11 12 A(:,:,3) = 5 6 7 8
M = cummin(A,3,"reverse")
M = M(:,:,1) = 1 2 3 4 M(:,:,2) = 5 6 7 8 M(:,:,3) = 5 6 7 8
包括缺失值的累积最小值
创建一个包含 NaN
值的矩阵。
A = [3 5 NaN 4; 2 6 2 9; 1 3 0 NaN]
A = 3×4
3 5 NaN 4
2 6 2 9
1 3 0 NaN
计算矩阵的累积最小值,包括 NaN
值。对于包含任一 NaN
值的矩阵列,只要遇到第一个 NaN
值,累积最小值就是 NaN
。
M = cummin(A,"includenan")
M = 3×4
3 5 NaN 4
2 5 NaN 4
1 3 NaN NaN
输入参数
A
— 输入数组
向量 | 矩阵 | 多维数组 | 表 | 时间表
输入数组,指定为向量、矩阵、多维数组、表或时间表。对于复数元素,cummin
比较这些元素的幅值。如果幅值相等,则 cummin
还比较相位角。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| duration
| table
| timetable
复数支持: 是
dim
— 沿其运算的维度
正整数标量
沿其运算的维度,指定为正整数标量。如果不指定维度,则默认为第一个大于 1 的数组维度。
以一个二维输入数组 A
为例:
cummin(A,1)
处理A
的各列中的连续元素并返回一个与A
等大小的包含各列中的累积最小值的数组。cummin(A,2)
处理A
的各行中的连续元素并返回一个与A
等大小的包含各行中的累积最小值的数组。
如果 dim
大于 ndims(A)
,则 cummin
返回 A
。
direction
— 累积方向
"forward"
(默认) | "reverse"
累积方向,指定为以下值之一:
"forward"
- 从运算维度的1
到end
运算。"reverse"
- 从运算维度的end
到1
运算。
nanflag
— 缺失值条件
"omitmissing"
(默认) | "omitnan"
| "includemissing"
| "includenan"
缺失值条件,指定为下列值之一:
"omitmissing"
或"omitnan"
- 计算累积最小值时,忽略A
中的NaN
值。如果A
有连续前导NaN
值,则M
中对应的元素是NaN
。"omitmissing"
和"omitnan"
具有相同的行为。"includemissing"
或"includenan"
- 计算累积最小值时,包括A
中的NaN
值。只要在A
中遇到第一个NaN
值,M
中的元素就立即成为NaN
。"includemissing"
和"includenan"
具有相同的行为。
提示
利用许多累积函数中的
"reverse"
选项可以快速执行定向计算,而不需要翻转或反射输入数组。
扩展功能
tall 数组
对行数太多而无法放入内存的数组进行计算。
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
GPU 数组
通过使用 Parallel Computing Toolbox™ 在图形处理单元 (GPU) 上运行来加快代码执行。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
此函数完全支持分布式数组。有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
版本历史记录
在 R2014b 中推出R2023a: 指定缺失值条件
使用 "omitmissing"
或 "includemissing"
选项计算累积最小值时,忽略还是包括输入数组中的缺失值。这些选项的行为分别与 "omitnan"
和 "includenan"
选项相同。
R2023a: 直接对表和时间表执行计算
cummin
函数可以对表或时间表中的所有变量执行计算,而无需通过索引访问这些变量。所有变量都必须具有支持计算的数据类型。有关详细信息,请参阅Direct Calculations on Tables and Timetables。
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)