发布网友 发布时间:2022-04-23 08:52
共3个回答
热心网友 时间:2022-06-18 15:30
数组数据的引用
1.下标法引用:A(i,j):其中i和j可以是一维向量、标量、“:”号或者“end”。i代表行号,j代表列号。例如:引用第一行,A(1,:)
2.索引法引用:A(index):index可以是任意的数组,index的元素大于0,返回的是一个尺寸与index一样的数组
3.布尔法引用:A(X):X是一个有0和1组成的数据,且size(A)=size(X),对应位置为1则留下该数据,0则去掉,最后按A中的存储顺序,返回一个列向量
热心网友 时间:2022-06-18 15:30
首先一点要说明的是,在matlab中,矩阵中的元素序号是按照“先行后列”的顺序排列的。
设如下随机矩阵:
A=rand(4,6)
A =
0.6551 0.9597 0.7513 0.09 0.1493 0.8143
0.1626 0.3404 0.2551 0.9593 0.2575 0.2435
0.1190 0.5853 0.5060 0.5472 0.8407 0.9293
0.4984 0.2238 0.6991 0.1386 0.2543 0.3500
则执行下面命令:
A(6)
ans =
0.3404
得到结果很容易看出是按照“先行后列”的排序。
其次,对于矩阵中的元素表示方法,主要分以下几点:
1.A(m,n)代表矩阵A中第m行,第n列的值:
A(3,4)
ans =
0.5472
2.对于矩阵A(m,n)
若是m用:代替即A(:,n)代表第n列的元素;若是n用:代替即A(m,:)代表第m行元素;
A(2,:)
ans =
0.1626 0.3404 0.2551 0.9593 0.2575 0.2435
若是用[a b c]代替m即A([a b c],n)则表示第a,b,c行,n列中的元素;
A(:,6)
ans =
0.8143
0.2435
0.9293
0.3500
若是用[a:b](a<b)代表m即A(a:b,:)则表示a到b行的所有元素;
A(2:4,:)
ans =
0.1626 0.3404 0.2551 0.9593 0.2575 0.2435
0.1190 0.5853 0.5060 0.5472 0.8407 0.9293
0.4984 0.2238 0.6991 0.1386 0.2543 0.3500
若是用[a b c]代替m,用[x y]代替n即A([a b c],[x y])则表示a,b,c行中x,y列中的元素;
A([1,3],5)
ans =
0.1493
0.8407
3.对于三位矩阵B(x,y,z),相当于若干个平面一次叠加;
如B(:,:,n)则表示B中的第n个平面上的所有矩阵。
完!
热心网友 时间:2022-06-18 15:31
用下标表示