前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一起来学演化计算-matlab基本函数min

一起来学演化计算-matlab基本函数min

作者头像
演化计算与人工智能
发布2020-08-14 00:11:16
5560
发布2020-08-14 00:11:16
举报
  • 找到数组中最小的元素

语法

  • M = min(A) 返回A的最小元素
    • 如果A是一个向量,那么min(A)返回A的最小元素
    • 如果A是一个矩阵,那么min(A)是一个行向量,包含每一列的最小值
    • 如果A是一个多维数组,那么min(A)沿着大小不等于1的第一个数组维操作,将元素视为向量。这个维度的大小变为1,而所有其他维度的大小保持不变。如果A是第一个维度为0的空数组,那么min(A)返回一个与A大小相同的空数组。
  • M = min(A,[],dim) 返回沿dim维数的最小元素,例如,如果A是一个矩阵,那么min(A,[],2)是一个列向量,包含每一行的最小值。因为第一维是列,第二维才是行,所以按照行来取最小值,则得到的是一个列向量
  • [M,I] = min( ___ )找到A的最小值的索引,并使用前面语法中的任何输入参数在输出向量I中返回它们。如果最小值出现多次,那么min返回与第一次出现相对应的索引
  • C = min(A,B) 返回一个数组,其中最小的元素取自A或B。
  • ___ = min( ___ ,nanflag) 指定是否在计算之前的任何语法时包含或省略NaN值。对于单个数组的情况,要在不指定dim的情况下指定nanflag,请使用min(A,[],nanflag)。例如,min(A,[],' includesenan')在一段时间内包含所有NaN值,min(A,[],'omitnan')会忽略它们。

示例

取向量中最小值

代码语言:javascript
复制
A = [23 42 37 15 52];
M = min(A)
M =

    15

取向量中最小的复数

代码语言:javascript
复制
A = [-2+2i 4+i -1-3i];
min(A)
ans =

  -2.0000 + 2.0000i

二维矩阵中每列的最小值

代码语言:javascript
复制
A = [2 8 4; 7 3 9]
A =

     2     8     4
     7     3     9

M = min(A)
M =

     2     3     4

二维矩阵中每行的最小值

代码语言:javascript
复制
A = [1.7 1.2 1.5; 1.3 1.6 1.99]
A =

    1.7000    1.2000    1.5000
    1.3000    1.6000    1.9900

M = min(A,[],2)
M =

    1.2000
    1.3000

返回最小值的索引

代码语言:javascript
复制
A = [1 9 -2; 8 4 -5]
A =

     1     9    -2
     8     4    -5

[M,I] = min(A)
M =

     1     4    -5


I =

     1     2     2

从A或B中取对应的较小值

代码语言:javascript
复制
A = [1 7 3; 6 2 9]
A =

     1     7     3
     6     2     9

B = 5;
C = min(A,B)
C =

     1     5     3
     5     2     5

找到矩阵中的最小值

  • 找到矩阵中的最小值即是把矩阵转换成一个一维向量,然后从中挑选出最小值
代码语言:javascript
复制
A = [8 2 4; 7 3 9]
A =

     8     2     4
     7     3     9

A(:)
ans =

     8
     7
     2
     3
     4
     9

[M,I] = min(A(:))
M =

     2


I =

     3
  • I是包含最小元素的A(:)的索引
  • 现在,使用ind2sub函数来提取与最小元素对应的A的行和列索引
代码语言:javascript
复制
[I_row, I_col] = ind2sub(size(A),I)
I_row =

     1


I_col =

     2
  • 如果你仅仅需要找到矩阵中的最小值而不必关心其所在位置只需要执行min函数两次
代码语言:javascript
复制
M = min(min(A))
M =

     2

有NaN的情况

创建一个向量并计算它的最小值,不包括NaN值

代码语言:javascript
复制
A = [1.77 -0.005 3.98 -2.95 NaN 0.34 NaN 0.19];
M = min(A,[],'omitnan')
M =

   -2.9500

min(A)也会产生这个结果,因为'omitnan'是默认选项 使用“includes enan”标志返回NaN

代码语言:javascript
复制
M = min(A,[],'includenan')
M =

   NaN

输入参数

输出参数

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DrawSky 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 语法
  • 示例
    • 取向量中最小值
      • 取向量中最小的复数
        • 二维矩阵中每列的最小值
          • 二维矩阵中每行的最小值
            • 返回最小值的索引
              • 从A或B中取对应的较小值
                • 找到矩阵中的最小值
                  • 有NaN的情况
                  • 输入参数
                  • 输出参数
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档