MATLAB - обозначение двоеточия

В colon(:)является одним из самых полезных операторов в MATLAB. Он используется для создания векторов, массивов индексов иspecify for iterations.

Если вы хотите создать вектор-строку, содержащий целые числа от 1 до 10, вы пишете -

1:10

MATLAB выполняет инструкцию и возвращает вектор-строку, содержащий целые числа от 1 до 10 -

ans =                                                                           
                                                                                
   1    2    3    4    5    6    7    8    9   10

Если вы хотите указать значение приращения, отличное от единицы, например -

100: -5: 50

MATLAB выполняет инструкцию и возвращает следующий результат -

ans =
   100    95    90    85    80    75    70    65    60    55    50

Возьмем другой пример -

0:pi/8:pi

MATLAB выполняет инструкцию и возвращает следующий результат -

ans =
   Columns 1 through 7
      0    0.3927    0.7854    1.1781    1.5708    1.9635    2.3562
   Columns 8 through 9
      2.7489    3.1416

Вы можете использовать оператор двоеточия, чтобы создать вектор индексов для выбора строк, столбцов или элементов массивов.

В следующей таблице описывается его использование для этой цели (у нас есть матрица A) -

Формат Цель
A(:,j) является j-м столбцом A.
A(i,:) это i-я строка матрицы A.
A(:,:) - эквивалентный двумерный массив. Для матриц это то же самое, что и A.
A(j:k) есть A (j), A (j + 1), ..., A (k).
A(:,j:k) это A (:, j), A (:, j + 1), ..., A (:, k).
A(:,:,k) k- я страница трехмерного массива A.
A(i,j,k,:) - вектор в четырехмерном массиве A. Вектор включает в себя A (i, j, k, 1), A (i, j, k, 2), A (i, j, k, 3) и так далее.
A(:) - все элементы A, рассматриваемые как один столбец. Слева от оператора присваивания A (:) заполняет A, сохраняя его форму. В этом случае правая часть должна содержать то же количество элементов, что и A.

пример

Создайте файл сценария и введите в него следующий код -

A = [1 2 3 4; 4 5 6 7; 7 8 9 10]
A(:,2)      % second column of A
A(:,2:3)    % second and third column of A
A(2:3,2:3)  % second and third rows and second and third columns

Когда вы запускаете файл, он отображает следующий результат -

A =
      1     2     3     4
      4     5     6     7
      7     8     9    10

ans =
      2
      5
      8

ans =
      2     3
      5     6
      8     9

ans =
      5     6
      8     9