Составители:
158
число, выполняется сдвиг на n размерностей вправо, а n первых раз-
мерностей дополняются единичными.
Функция [B, n] = shiftdim(X) возвращает с тем же количест-
вом элементов, что и X, но с удаленными ведущими единичными раз-
мерностями; количество удаленных размерностей фиксируется пере-
менной n.
Функция shiftdim удобна тем, что подобно функциям sum и
diff, работает
с первой неединичной размерностью.
Замечание. Если X - скаляр, то функции shiftdim(X) не выполняется.
Пример.
A = rand(1, 1, 3, 1, 2);
[B, n] = shiftdim(A)
B(:, :, 1) =
0.3046
0.1897
0.1934
B(:, :, 2) =
0.6822
0.3028
0.5417
n = 2
size(B)
ans = 3 1 2
Массив B имеет размер 3x1x2 и n = 2.
C = shiftdim(B, -n);
isequal(A, C)
ans = 1
Таким образом, массивы С и A идентичны.
D = shiftdim(A, 3);
size(D)
ans = 1 2 1 1 3
Сопутствующие функции: RESHAPE, SQUEEZE.
SQUEEZE - Удаление всех единичных размерностей многомерно-
го массива
Синтаксис:
B = squeeze(A)
число, выполняется сдвиг на n размерностей вправо, а n первых раз-
мерностей дополняются единичными.
Функция [B, n] = shiftdim(X) возвращает с тем же количест-
вом элементов, что и X, но с удаленными ведущими единичными раз-
мерностями; количество удаленных размерностей фиксируется пере-
менной n.
Функция shiftdim удобна тем, что подобно функциям sum и
diff, работает с первой неединичной размерностью.
Замечание. Если X - скаляр, то функции shiftdim(X) не выполняется.
Пример.
A = rand(1, 1, 3, 1, 2);
[B, n] = shiftdim(A)
B(:, :, 1) =
0.3046
0.1897
0.1934
B(:, :, 2) =
0.6822
0.3028
0.5417
n= 2
size(B)
ans = 3 1 2
Массив B имеет размер 3x1x2 и n = 2.
C = shiftdim(B, -n);
isequal(A, C)
ans = 1
Таким образом, массивы С и A идентичны.
D = shiftdim(A, 3);
size(D)
ans = 1 2 1 1 3
Сопутствующие функции: RESHAPE, SQUEEZE.
SQUEEZE - Удаление всех единичных размерностей многомерно-
го массива
Синтаксис:
B = squeeze(A)
158
Страницы
- « первая
- ‹ предыдущая
- …
- 158
- 159
- 160
- 161
- 162
- …
- следующая ›
- последняя »
