精华内容
下载资源
问答
  • find函数 matlab

    2014-07-23 15:33:16
    找出符合条件的元素位置 ...[rows cols]=find(条件) 找出最大值所在的位置 [rows cols]=find(a=max(a(:))); 找出最小值的位置 [rows cols]=find(a=min(a(:)));


    找出符合条件的元素位置

    [rows cols]=find(条件)


    找出最大值所在的位置

    [rows cols]=find(a=max(a(:)));


    找出最小值的位置

    [rows cols]=find(a=min(a(:)));

    展开全文
  • 更多内容尽在个人专栏:matlab学习上一节我们说了说matlab的一些数论计算工具,这一节我们来说一个很有用的函数:findfind函数find函数可以在matlab里进行查询操作,应用主要有以下几种:1、find(x,n)如果不特殊...

    matlab应用——求极限,求导,求积分,解方程,概率统计,函数绘图,三维图像,拟合函数,动态图,傅里叶变换,随机数,优化问题....更多内容尽在个人专栏:matlab学习

    上一节我们说了说matlab的一些数论计算工具,这一节我们来说一个很有用的函数:find

    find函数:

    find函数可以在matlab里进行查询操作,应用主要有以下几种:

    1、find(x,n)

    如果不特殊说明,find函数默认查询非零元素的位置,即对x矩阵查询前n个非零元素的位置

    例子:

    x= [1 0 2; 0 1 1; 0 0 4]

    ans1=find(x,3)

    注意这里位置是这样规定的:先列后行,这个大家可以手动试验一下

    比如矩阵 1 0 2

    0 1 1

    0 0 4

    位置序号:

    1 4 7

    2 5 8

    3 6 9

    所以上面那个程序的结果就是:

    100752f9323be40ae0da307504785aee.png

    2、find(condition,n)

    condition就是查询条件,之前的x就是默认x非零

    还是用上面的矩阵,我们换一个查询方式

    x= [1 0 2; 0 1 1; 0 0 4]

    ans1=find(x==2,1)

    结果就是

    d936ef77378e8e523116572c574a49b4.png

    3、多条件查询

    这里查询条件也可以有多个:

    x= [1 0 2; 0 1 1; 0 0 4]

    ans1=find(x>=2 & x<=4,2)

    结果

    58186925ecd342ff66a5e15c8cd6792b.png

    4、从后向前查询find(condition,n,'last')

    我们把例1修改一下,找出后三个非零元素的位置

    x= [1 0 2; 0 1 1; 0 0 4]

    ans1=find(x,3,'last')

    6eb7edc428ff30a5ba66adf0545a8616.png

    5、修改返回值格式

    [i,j,v] = find(x)

    返回值为三个矩阵,分别达标元素的行坐标,列坐标,元素值

    x = [3 2 0; -5 0 7; 0 0 1]

    [i,j,v] = find(x)

    矩阵直观一点是这个样子:

    b9edf064b3acfbeb33adef43cfa6e362.png

    结果就是

    36e098bf7ecadd668daba3118512bf48.png
    注意是‘非零’元素

    这一节我们说了说怎么使用find这个函数快速查找矩阵特定元素,非常实用,大家可以多用用试试

    欢迎喜欢的朋友点赞关注收藏啊:)

    展开全文
  • Matlab 数值数据1、表示方法数值数据类型分类: 整型 浮点型 复数型整型表示:uint8 将数值数据转换为无符号的8位整数 Int8 有符号的八位整数For example:>> x=int8(129)x = 127>> x=uint8(145)x = 145...

    18c9d16238d5f472c15569b40c99f354.png

    Matlab 数值数据

    1、表示方法

    数值数据类型分类: 整型 浮点型 复数型

    整型表示:uint8 将数值数据转换为无符号的8位整数

    Int8 有符号的八位整数

    For example:

    >> x=int8(129)

    x =

    127

    >> x=uint8(145)

    x =

    145

    浮点型表示:单精度4字节 双精度8字节

    single函数:将其他类型的数据转换为单精度型

    Double函数:将其他类型函数转换为双精度型

    常用函数:class() 用于查看数据的类型

    For example:

    >> a=33;

    >> class(a)

    ans =

    double

    >> class(single(a))

    ans =

    single

    复数型:由实部和虚部两部分构成

    real函数:求复数的实部

    Imag函数:求复数的虚部

    For example:

    >> a=3+5i

    a =

    3.0000 + 5.0000i

    >> real(a)

    ans =

    3

    >> imag(a)

    ans =

    5

    2、数值数据输出格式

    可用format命令来控制输出数据的格式

    用法:format 数据格式

    只影响输出格式,不影响数据的计算与储存

    For example:

    >> a=1/3;

    >> format long

    >> a

    a =

    0.333333333333333

    >> format short

    >> a

    a =

    0.3333

    3、常用数学函数

    函数调用格式: 函数名(函数变量)

    函数变量为矩阵变量,也可以为标量

    For example:

    >> A=[1 2 3; 4 5 6;7 8 9]

    A =

    1 2 3

    4 5 6

    7 8 9

    >> exp(A)

    ans =

    1.0e+03 *

    0.0027 0.0074 0.0201

    0.0546 0.1484 0.4034

    1.0966 2.9810 8.1031

    三角函数:sin(x) 自变量x的单位为角度

    Sind(x) 自变量x的单位为弧度

    For example:

    >> sin(pi/6)

    ans =

    0.5000

    >> sind(30)

    ans =

    0.5000

    abs函数 用于求实数的绝对值、复数的模、字符串的ASCII码值

    For example:

    >> abs(-4)

    ans =

    4

    >> abs(3+4i)

    ans =

    5

    >> abs('abc')

    ans =

    97 98 99

    取整函数

    Fix 取靠近0的整数

    Floor 向下取整

    Ceil 向上取整

    Round 四舍五入

    For example:

    >> round(4.7)

    ans =

    5

    >> round(4.3)

    ans =

    4

    >> ceil(4.7)

    ans =

    5

    >> ceil(4.3)

    ans =

    5

    >> floor(4.7)

    ans =

    4

    >> floor(4.3)

    ans =

    4

    >> fix(4.7)

    ans =

    4

    >> fix(-3.7)

    ans =

    -3

    取余函数

    rem(被除数,除数)

    Mod(被除数,除数)

    For example:

    >> rem(10,3)

    ans =

    1

    >> mod(1,3)

    ans =

    1

    判断n是否为素数的函数:

    Isprime(n) 如果n是素数,返回1.不是素数,返回零

    For example:

    >> x=0:100; %生成一个向量 从0到100

    >> k=isprime(x); %找出向量x中是素数的位置,如果是素数,返回1.不是素数,返回零,0和1返回到k向量中

    >> k1=find(k) %find函数找出k向量中不为0的数的序号,即素数所在位置返回到k1中

    >> p=x(k1) %输出0到100里的素数

    p =

    Columns 1 through 23

    2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83

    Columns 24 through 25

    89 97

    展开全文
  • 练习题来自:湖心亭:MATLAB基础练习(一)​zhuanlan.zhihu.com1、按要求写出实现该功能的代码(1)使用方括号“[ ]”操作符产生一个列向量x,内容为1,2,4,7(2)使用方括号“[ ]”操作符产生一个行向量x,内容为...

    练习题来自:

    湖心亭:MATLAB基础练习(一)zhuanlan.zhihu.com
    2f666d26f70079a793e27e81c72f26d2.png

    1、按要求写出实现该功能的代码

    (1)使用方括号“[ ]”操作符产生一个列向量x,内容为1,2,4,7

    (2)使用方括号“[ ]”操作符产生一个行向量x,内容为1,2,4,7

    (3)使用冒号“:”操作符产生一个行向量x,内容为9,7,5,3,1

    (4)使用方括号“[ ]”操作符产生一个二维数组A,第1行为9,4,5,1;第2行为1,0,4,7

    >> b = [1;2;4;7]
    
    b =
    
         1
         2
         4
         7
    
    >> a =[1,2,4,7]
    
    a =
    
         1     2     4     7
    
    
    >> c=[9:-2:1]
    
    c =
    
         9     7     5     3     1
    
    
    >> d = [9,4,5,1;1,0,4,7]
    
    d =
    
         9     4     5     1
         1     0     4     7

    (5)使用zeros函数产生一个3*2的二维数组A,使用ones函数产生一个3*4的二维数组B,将A、B拼接成3*6的二维数组C

    >> a = zeros(3,2)
    
    a =
    
         0     0
         0     0
         0     0
    
    >> b = ones(3,4)
    
    b =
    
         1     1     1     1
         1     1     1     1
         1     1     1     1
    
    >> c=[a b]
    
    c =
    
         0     0     1     1     1     1
         0     0     1     1     1     1
         0     0     1     1     1     1

    (6)使用rand函数产生一个3*4的二维数组A,使用逻辑1标识的方式寻访A矩阵中大于0.3并且小于0.7的所有元素,赋给B

    >> a = rand(3,4)
    
    a =
    
        0.0975    0.9575    0.9706    0.8003
        0.2785    0.9649    0.9572    0.1419
        0.5469    0.1576    0.4854    0.4218
    
    >> b = [a>0.3 & a<0.7]
    
    b =
    
      3×4 logical 数组
    
       0   0   0   0
       0   0   0   0
       1   0   1   1

    2、练习矩阵定位函数find的使用

    逐句输入并运行以下命令,观察每一步的运行结果,弄明白每一条语句的含义。

    clear;

    X=[3 2 0; -5 6 1]

    indices =find(X>=1) %%语句1

    [row,col] =find(X>=1) %%语句2

    >> clear;
    >> X = [3 2 0;-5 6 1]
    
    X =
    
         3     2     0
        -5     6     1
    
    >> indices = find(X>=1) %%语句1
    
    indices =
    
         1
         3
         4
         6
    
    >> [row,col] = find(X>=1)
    
    row =
    
         1
         1
         2
         2
    
    
    col =
    
         1
         2
         2
         3
    

    3、练习子矩阵的赋值、删除等操作

    已知:A =

    1 25 7 20

    14 23 6 18

    12 23 15 16

    20 10 5 9

    在MATLAB中给A赋值并完成以下操作:

    (1) 给A中第6个元素赋值为100;

    (2) 给A的第五列赋值[1,2,3,4];

    (3) 将矩阵A第2—4行中第1,3,5列元素赋值给矩阵B;

    (4) 求矩阵A的大小(行列数);

    (5) 将A赋值给矩阵C,删除C的第一行和第三行并显示;

    (6) 将矩阵A重排成5行4列的矩阵(提示:查找reshape函数的帮助)。

    >> A = [1 25 7 20;14 23 6 18;12 23 15 16;20 10 5 9]
    
    A =
    
         1    25     7    20
        14    23     6    18
        12    23    15    16
        20    10     5     9
    
    >> A(6)=100
    
    A =
    
         1    25     7    20
        14   100     6    18
        12    23    15    16
        20    10     5     9
    
    >> A(:,end+1)=[1;2;3;4]
    
    A =
    
         1    25     7    20     1
        14   100     6    18     2
        12    23    15    16     3
        20    10     5     9     4
    
    >> B = A(2:4,[1,3,5])
    
    B =
    
        14     6     2
        12    15     3
        20     5     4
    
    >> size(A)
    
    ans =
    
         4     5
    
    >> 
    >> C=A
    
    C =
    
         1    25     7    20     1
        14   100     6    18     2
        12    23    15    16     3
        20    10     5     9     4
    
    >> C([1,3],:)=[]
    
    C =
    
        14   100     6    18     2
        20    10     5     9     4
    
    >> A
    
    A =
    
         1    25     7    20     1
        14   100     6    18     2
        12    23    15    16     3
        20    10     5     9     4
    
    >> A=reshape(A,5,4)
    
    A =
    
         1   100    15     9
        14    23     5     1
        12    10    20     2
        20     7    18     3
        25     6    16     4
    
    

    4、练习常用函数的使用:

    逐句输入并运行以下命令,观察每一步的运行结果。

    (1)

    x=[3,2,1,0]

    a=length(x)

    b=size(x,1)%%行数

    c=size(x,2)%%列数

    s=sum(x)

    x = [3 2 1 0]
    x =
    
         3     2     1     0
    
    >> a = length(x)
    
    a =
    
         4
    
    >> b = size(x,1)
    
    b =
    
         1
    
    >> c = size(x,2)
    
    c =
    
         4
    
    >> s = sum(x)
    
    s =
    
         6
    
    

    (2)

    x=[3,2,1,0; 5 6 8 7]

    b=size(x,1)

    c=size(x,2)

    d=size(x,3)%%如果维度小于3则返回1

    s=sum(x)

    s2=sum(x(:))

    >> x=[3 2 1 0;5 6 8 7]
    
    x =
    
         3     2     1     0
         5     6     8     7
    
    >> b=size(x,1)
    
    b =
    
         2
    
    >> c=size(x,2)
    
    c =
    
         4
    
    >> d=size(x,3)
    
    d =
    
         1
    
    >> s=sum(x)
    
    s =
    
         8     8     9     7
    
    >> s2=sum(x(:))
    
    s2 =
    
        32

    5、按要求编写fun函数:

    函数输入参数:一个向量

    函数输出参数:该向量中所有大于0的元素的和

    功能:求该向量中所有大于0的元素的和

    函数调用示例:s=fun([-1, 0, 2, 3, -5, 4])

    function [count]=fun(a)
    length=size(a(:));
    count=0;
    for i=1:length
        if a(i)>0
            count=count+a(i);
        end
    end
    展开全文
  • 有同学说,靠网络上的文章,很难...本期推文,喵姐会介绍一下matlab作图,尽量让各位同学通过一篇推文学会matlab作图从入门到熟练。如果你对matlab已经有所了解,可以跳过下面的入门部分。思想部分为什么我们要用MAT...
  • matlab中学到的代码知识心得汇总汇总,供自己以后复习学习用,温故而知新!首先开始量的积累,然后再去总结归纳!(一)randperm函数random permutation,随机排列的意思。randperm(n) 将1至n的序列打乱随机排列。...
  • 1、按要求写出实现该功能的代码(1)使用方括号“[ ]”操作符产生一个列向量x,内容为1,2,4,7 (2)使用方括号“[ ]”操作符产生一个行...第2行为1,0,4,7(5)使用zeros函数产生一个3*2的二维数组A,使用one...
  • 系统中的ADAS场景搭建以及仿真建模是使用的Prescan软件,Prescan是西门子旗下的自动驾驶场景搭建软件,是基于matlab/simulink使用的。Prescan安装后桌面会出现三个图标,分别是Prescan GUI,Prescan sim,Prescan ...
  • 本文主要讲解数学建模与MATLAB——动态规划,这对于初学者来说无疑是玄学,网络上有许多大牛对于此思想方法做了详细且简洁的讲解,文末也汇总一些比较好的博客,希望对大家有用!!一什么是动态规划1、动态规划的...
  • 听说今天微信支持520红包,童鞋们可以发给小编...文件原始类型为excel,采用MATLAB GUI模块设计一个查询系统,使得用户输入放射性物质的任意信息,便可查询到其半衰期及特征峰γ能量等。由于半衰及特征峰的数据较...
  • matlab中m文件编辑器不同部分有不同的颜色,如下图,采用的是cell模式:用两个%%加空格,表示一个新的Cell段。下图“%% Mach...”,直到出现下一个“%% ....”,是一个Cell。有了代码Cell后,可以只运行M文件中某个...
  • 前几天给大家介绍了“一行matlab代码可以做哪些匪夷所思的事情”,今天小编带给大家一款酷炫的私人订制版迷宫游戏。这款迷宫游戏包含以下功能:随机生成迷宫地图通过键盘手动求解生成的迷宫MATLAB自动求解生成的迷宫...
  • 该部分代码只包括用matlab自带函数写的,由于是作业的关系,自己写的函数暂时不发出来。代码仅供参考,切勿抄袭。%% 作业要求:完成任意图像的霍夫曼编码,并计算冗余度.% author:xxxx% date :2020.6.3clear,clc; I1=...
  • matlab应用——求极限,求导,求积分,解方程,函数绘图,三维图像,拟合函数....更多内容尽在个人专栏:matlab学习上一节我们暂时完结了matlab绘图部分,这一节我们了解一下matlab中的数据插值什么是数据插值?我们...
  • 作为数学系的学生,尤其是学过C,C++,MATLAB的数学系学生,不会编程真的很让人羞愧和抓狂ε=ε=ε=(#>д<)ノ 为了数学建模,也为了更有信心的学习数学和计算机的知识,我决定将Matlab Cody写一遍,希望会...
  • 那么在MATLAB中,可以对数组中的元素进行哪些操作呢?今天数模君就带大家了解一下数组操作的常用方法。其中,针对数组中元素的操作有:查找、替换、删除、排序。首先,来了解一下对数组中元素的查找方法。已知数组A...
  • 最近一段时间,工作上花了不少时间用MATLAB处理工厂下线的数据,数据庞大不说,复杂度也高,各种推算和统计所以今天我打算总结一下,平时我在用MATLAB做数据分析时常用的几个小技巧正好全国大学生数学建模竞赛下周...
  • 近期招聘、培训安排(点击图片了解详情):在大气科学中,matlab可以用于小规模的科学计算,也可以绘制各类气象图,做各种统计运算,功能强大。由于近期在家休息关系,顺便写写使用m_map和matlab读取和绘制海温图的...
  • 参考文献薛定宇《分数阶微积分学与分数阶控制》数值实现Matlab 2019a 主要基于薛定宇开发的FOTF工具箱蜜酒厅通讯社 固体地球物理学部封面及文中照片感谢 @CycleUser 友情提供前情回顾形式主义的居士:分数阶微积分和...
  • 最近,需要用MATLAB处理一批数据,数据的格式如下: 如上图所示,在一个文本文件中存储着一个N行8列的矩阵,...find函数语法:1.ind = find(X)2.ind = find(X, k)3.ind = find(X, k, 'first')4.ind = find(X, k, 'l...
  • matlab中的拉盖尔函数似乎是由于用的符号计算,有很多弊端,比如:不能用gpuArray、计算速度慢很多,在这里推荐一个最近在matlab论坛发现的有人写的广义拉盖尔函数,不仅速度快而且可以用gpuArray。function当生成...
  • find函数,可以找出矩阵中某个特定值的行列号。本文介绍一种方法,可以模拟find函数的功能。// OpenCVFind.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include using ...
  • matlab find函数

    2019-10-05 06:27:08
    find函数用来获取向量或矩阵中非0元素的索引 假设X是行向量,则find(X)返回的是一个行向量;X'为列向量,find(X')返回的是一个列向量。 看一个例子:A是一个行向量,B是一个列向量,将B中非0元素的索引添加到A中 ...
  • matlabfind函数

    千次阅读 2019-08-26 19:55:50
    find函数的用法1.引入2.介绍3.进阶技巧4.参考 1.引入 今天做吴恩达机器学习的题目的时候,发现了一个之前没有接触过的函数,find函数! 在这里对find函数做一个简单的用法介绍 2.介绍 返回向量或矩阵中不为0的元素...
  • matlab find函数婚姻是不可捉摸在于:一个乐观的男人加上一个乐观的女人,有时等于两个悲观主义者。x1=-2:2; k1=-2:2; x2=[1,-1,1]; k2=-1:1; k=min([k1,k2]):max([k1,k2])举个例子讲下find函数的用法: 例如A=[1 2 ...
  • Matlab find函数

    千次阅读 2015-02-04 22:45:54
    MATLAB中矩阵元素的查找函数find的一些基本使用,简单的例子说明函数的主要用法。欢迎MATLAB的初学者一起学习讨论。
  • 误差函数 erfc 余误差函数 istrellis 检测输入是否 MATLAB 的 trellis 结构(...中的谱 fieldnames 构架域名 figure 创建图形窗 fill3 三维多边形填色图 find ......exit 退出 Matlab 环境? exp 指数函数? expand ...
  • matlab函数:find函数

    2020-10-15 15:45:41
    k=find(x) 返回一个包含数组x钟每个非零元素的线性索引的向量 1、若x为向量,则find返回方向与x相同的向量 2、如果x为多维数组,则find返回由结果的线性索引组成的列向量 3、如果x为全零元素或为空,则find返回一个...
  • Matlabfind函数详解

    千次阅读 2020-03-14 17:54:01
    Matlabfind函数详解 在Matlab中通过“help find”指令可以看到find函数的作用是 “Find indices and values of nonzero elements”,即查找非零元素的索引(可以理解为位置)和值。常见用法如下: 一、假设数组a=[1 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 607
精华内容 242
关键字:

find函数matlab

matlab 订阅