MATLAB — запись двоеточия
двоеточие(:) — один из самых полезных операторов в MATLAB. Он используется для создания векторов, массивов индексов и указания для итераций. .
Если вы хотите создать вектор-строку, содержащий целые числа от 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(j:k) | является A(j), A(j+1),...,A(k). |
A(:,j:k) | является A(:,j), A(:,j+1),...,A(:,k). |
A(:,:,k) | является k ым страница трехмерного массива 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 = [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
MATLAB