我是靠谱客的博主 烂漫朋友,这篇文章主要介绍MATLAB中常用的函数总结一、find()函数二、isprime(n)函数三、size()函数四、sub2ind(S,I,J)ind2sub(S,D)函数reshape(A,m,n)函数,现在分享给大家,希望可以做个参考。
一、find()函数
查找非零元素的位置。
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17>> 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.
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19>> 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()函数
获取一个矩阵的行数和列数,结果为由行数和列数组成的向量
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15>> 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为矩阵时,其行列数必须相同
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14>> 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为要转化的序号
复制代码
1
2
3
4
5
6
7
8
9
10
11>> [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的排列方式,不改变元素个数和排列顺序
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14>> 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中常用内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复