matlab 中B=A(end:-1:1,:)是什么意思,C=A(:,end:-1:1)是什么意思
B=A(end:-1:1,:)表示将A的行的顺序从尾到头排列构成B,也就是B的第一行对应A的最后一行,第二行对应A的倒数第二行,以此类推。 C=A(:,end:-1:1)则是对A的列做类似倒的排列,得到C。
A(end:-1:1,:),同样逗号前表示行,后表示列,列的部分为冒号,表示列数任意,也就是对A整行整行进行操作,逗号前,end表示最后一行,1表示第1行,-1表示从后到前倒着取出A的整列。
一般情况下我们顺序来使用,比如A(2:1:end,:)**表示从A第二行取到最后一行,1表示取行时的间隔,若A(2:2:end,:),表示每两行取一行,就是2、4、6行下去到end。
扩展资料:
MATLAB矩阵操作,如A(2:end,end:-1:1),一个矩阵括号里逗号用于间隔不同维度。如果A为一维向量,A(1)就表示第一个元素。
如果A为二维矩阵,那么需要**A(m,n)表示第m行,第n列矩阵;
若是有冒号,比如A(:,n)就表示那些列数为n,行数为任意的所有制,即去矩阵第n列,相应A(m,:)表示去A的第m行所有元素;
“…”是另一个矩阵的省略形式,**B(2:end-1,3:end)+…**表示两个矩阵的运算。
C=A(:,end:-1:1)则是对A的列做类似倒的排列,得到C
能不能讲下括号里面 不同分号前和逗号前表示的是什么 谢谢你
一个矩阵括号里逗号用于间隔不同维度
比如A为一维向量,A(1)就表示第一个元素
如果A为二维矩阵,那么需要A(m,n)表示第m行,第n列矩阵,若是有冒号,比如A(:,n)就表示那些列数为n,行数为任意的所有制,即去矩阵第n列,相应A(m,:)表示去A的第m行所有元素
再来看A(end:-1:1,:),同样逗号前表示行,后表示列,列的部分为冒号,表示列数任意,也就是对A整行整行进行操作;逗号前,end表示最后一行,1表示第1行,-1表示从后到前倒着取出A的整列,一般情况下我们顺序来使用,比如A(2:1:end,:)表示从A第二行取到最后一行,1表示取行时的间隔,若A(2:2:end,:),表示每两行取一行,就是2 4 6行下去到end。列的情况类似就不说了。
一个矩阵括号里逗号用于间隔不同维度。
比如A为一维向量,A(1)就表示第一个元素。
如果A为二维矩阵,那么需要A(m,n)表示第m行,第n列矩阵,若是有冒号,比如A(:,n)就表示那些列数为n,行数为任意的所有制,即去矩阵第n列,相应A(m,:)表示去A的第m行所有元素。
再来看A(end:-1:1,:),同样逗号前表示行,后表示列,列的部分为冒号,表示列数任意,也就是对A整行整行进行操作;逗号前,end表示最后一行,1表示第1行,-1表示从后到前倒着取出A的整列,一般情况下我们顺序来使用,比如A(2:1:end,:)表示从A第二行取到最后一行,1表示取行时的间隔,若A(2:2:end,:),表示每两行取一行,就是2、4、6行下去到end。列的情况类似就不说了。
“...”是另一个矩阵的省略形式,B(2:end-1,3:end)+...表示两个矩阵的运算。
:表示任意,放到前面表示任意行,后面任意列
1:1:end表示行向量起始为1步长1中止为end
可以用向量进行矩阵的提取
A(1:3,:)就表示提取A矩阵的1到3行任意列