MATLAB中:冒号用法

1. x(:, :, : )

x(i,j,k)的含义是第k层矩阵的第i行第j列元素;

x(:,:,1)则表示第1层矩阵。

比如:创建多维数组

A = [1 2 3; 4 5 6; 7 8 9]
A(:,:,2) = [10 11 12; 13 14 15; 16 17 18]

     
     
     
     
  • 1
  • 2

那么,A就是

A = 
A(:,:,1) =
 1     2     3
 4     5     6
 7     8     9

A(:,:,2) =

10    11    12
13    14    15
16    17    18
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

A(:,1,1)

ans = 
     1
     4
     7

   
   
   
   
  • 1
  • 2
  • 3
  • 4

2. x(1, : )

y=x(1,:),把x这个矩阵的第一行所有列赋给y
注,冒号相当于所有。

3.x(:, : )

例如,在matlab中,a(:, 1:3)=[]表示将数组a的第1到第3列删除。
第一个冒号( : )表示取数组a的所有行;
1:3表示取数组a的第1到第3列。


参考:

  1. colon, : matlab文档;
  2. 多维数组 MATLAB文档;

你可能感兴趣的:(MATLAB中:冒号用法)