Перестановки
размерностей массивов
Если представить
многомерный массив в виде страниц, то их перестановка является перестановкой
размерностей массива. Для двумерного массива перестановка часто означает
транспонирование
— замену строк столбцами и наоборот. Следующие функции обобщают транспонирование
матриц для случая многомерных массивов и обеспечивают перестановку размерностей
многомерных массивов:
-
permute
(A, ORDER) — переставляет размерности массива А в порядке, определяемом
вектором перестановок ORDER. Вектор ORDER — одна из возможных перестановок
всех целых чисел от 1 до
N,
где
N —
размерность массива А;
-
ipermuteCA,
ORDER) — операция, обратная permute: permute(permute(A. ORDER), ORDER)=A
Ниже приводятся
примеры применения этих функций и функции size:
»
А=[1 2: 3 4]:
» В=[5 6; 7 8];
» С=[9 10; И 12];
» D=cat(3.A,B.C)
D(:,:,l)
=
1
2
3
4
9
10
11
12
»
size(D)
ans =
2
2 3
» size(permute(D.[3 2 1]))
ans=
3
2 2
»size(ipermute(D.[2 1 3]))
ans=
2
2 3
» ipermute(permute(D,[3 2 1]),[3 2 1])
1
2
3
4
ans(:. :,2) =
5
6
78
ans(:.:,3)
=
9
10
11
12
Содержание раздела