zoukankan      html  css  js  c++  java
  • Matlab中find()寻找函数的常见用法


    Matlab中find函数的使用简言之:
    输入为:寻找的对象和条件  (在哪里找和找什么);
    输出为:满足条件的数的位置。
    当没有寻找到满足条件的值时,返回空矩阵;
    例如在某向量/矩阵中寻找为零的数,寻找不为零的数,寻找某一范围内的数,判断是否有满足条件的数以及有多少等等:

    •  Example 1.寻找不为零的数:

     find函数若不明确写出寻找条件而是仅仅写出寻找的对象(如下面的find(x)),则默认是找出向量/矩阵中不为零的数,并输出其位置:

    运行:

    1 x = [1,0,8,9,10,-2,-8,-0.5,27];
    2 index = find(x) 

    结果:

    1 index =
    2 
    3      1     3     4     5     6     7     8     9
    •  Example 2.寻找不为零的数(个人常用):

     find(x~=0) 等价于 find(x)

    运行:

    1 x = [1,0,8,9,10,-2,-8,-0.5,27];
    2 index = find(x~=0) 

    结果:

    1 index =
    2 
    3      1     3     4     5     6     7     8     9
    •  Example 3.寻找能整除某数的数:

     例如在x向量中寻找3的倍数,返回其在x向量中的位置:

    运行:

    1 x = [1,0,8,9,10,-2,-8,-0.5,27];
    2 index = find(mod(x,3)==0)      % 在x中寻找能被3整除(对3取余的结果为0)的数

    结果:

    1 index =
    2 
    3      2     4     9
    •  Example 4.在x中寻找某个范围内的数, 返回其在x向量中的位置:

    运行:

    1 x = [1,0,8,9,10,-2,-8,-0.5,27];
    2 index = find(x>-3&x<=1)     % 注意:这里不能写成 find(-3<x<=1)

    结果:

    1 index =
    2 
    3      1     2     6     8
    •  Example 5. 在矩阵x中寻找,返回其在x矩阵中的位置:

     注意:matlab对矩阵的存储和操作是按照列排序的,所以返回的索引这里是4:

    运行:

    1 x = [1,0,8;9,10,-2;-8,-0.5,27];
    2 index = find(x==0) 

    结果:

    1 index =
    2 
    3      4
  • 相关阅读:
    python学习笔记:遍历目录
    c++笔记:友元函数
    VMware Workstation 9: This virtual machine's policies are too old to be run by this version of VMware
    inet_ntoa内存问题
    python学习笔记:sqlite3查询
    python学习笔记:利用asyncore的端口映射(端口转发)
    编写谷歌浏览器的油猴脚本
    window编译7z
    通过配置nginx的header路由到不同环境的服务器
    用U盘给物理机安装ubuntu20.04
  • 原文地址:https://www.cnblogs.com/CCWangsj/p/12994427.html
Copyright © 2011-2022 走看看