我是靠谱客的博主 舒服衬衫,最近开发中收集的这篇文章主要介绍MATLAB中常用的函数总结一、find()函数二、isprime(n)函数三、size()函数四、sub2ind(S,I,J)ind2sub(S,D)函数reshape(A,m,n)函数,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
一、find()函数
查找非零元素的位置。
>> A = [1,0,0;0,2,0;0,0,3]
A =
1 0 0
0 2 0
0 0 3
>> x = find(A)
x =
1
5
9
A是一个3×3的矩阵,其中有零元素和非零元素;使用find()函数查找A中的非零元素的位置,并生成列向量赋给向量x。
二、isprime(n)函数
判断一个数n是否是素数,若是素数则返回1,否则返回0.
>> x = 1:100;
>> k = isprime(x);
>> y = find(k);
>> z = x(y)
z =
列 1 至 9
2 3 5 7 11 13 17 19 23
列 10 至 18
29 31 37 41 43 47 53 59 61
列 19 至 25
67 71 73 79 83 89 97
- 定义x是一个从1到100的行向量
- 使用isprime()函数,参数为向量x,得到100个由1和0组成的行向量k
- 使用find()函数查找k中非零元素的位置并赋值给向量y
- 输出行向量x中的y表示位置的元素(即素数)并赋值给z
三、size()函数
获取一个矩阵的行数和列数,结果为由行数和列数组成的向量
>> A = [1:3;4:6;7:9]
A =
1 2 3
4 5 6
7 8 9
>> size(A)
ans =
3 3
由于A是一个3×3的矩阵,所以结果为一个行向量(3,3)
四、sub2ind(S,I,J)
将一个矩阵的下标转换为序号。matlab中的矩阵元素按列存储,因此序号为第一列第一个元素、第一列第二个元素·····第n列第n个元素
其中
- S为要转换矩阵的行数和列数,是一个由行数和列数组成的向量,通常用size()函数获取。
- I和J分别为要转换矩阵的行下标和列下标。当i和j为矩阵时,其行列数必须相同
>> A = [1:3;4:6]
A =
1 2 3
4 5 6
>> D = sub2ind(size(A),[1,2;2,2],[1,1;3,2])
D =
1 2
6 4
当下标(i,j)分别为以下时的序号分别为
- (i,j) = (1,1) 为1
- (i,j) = (2,1) 为2
- (i,j) = (2,3) 为6
- (i,j) = (2,2) 为4
ind2sub(S,D)函数
将一个矩阵的序号转化为下标
其中,D为要转化的序号
>> [I,J] = ind2sub([3,3],[1,3,5])
I =
1 3 2
J =
1 1 2
输入一个3×3的矩阵,求序号为1,3,5的元素的下标,得到的下标为
(1,1)(3,1)(2,2)
reshape(A,m,n)函数
在矩阵元素保持不变的前提下,将矩阵A转换为m×n的矩阵
注意:该函数只改变矩阵A的排列方式,不改变元素个数和排列顺序
>> A = [1:9]
A =
1 2 3 4 5 6 7 8 9
>> B = reshape(A,3,3)
B =
1 4 7
2 5 8
3 6 9
最后
以上就是舒服衬衫为你收集整理的MATLAB中常用的函数总结一、find()函数二、isprime(n)函数三、size()函数四、sub2ind(S,I,J)ind2sub(S,D)函数reshape(A,m,n)函数的全部内容,希望文章能够帮你解决MATLAB中常用的函数总结一、find()函数二、isprime(n)函数三、size()函数四、sub2ind(S,I,J)ind2sub(S,D)函数reshape(A,m,n)函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复