squeeze
удаляет одиночные размерности ND-мерного массива
Синтаксис
r = squeeze(hypIn)
Аргументы
- hypIn
ND-мерный массив любого встроенного типа (логические,... cell-массив, структуры)
- r
массив или ND-мерный массив того же самого типа.
Описание
squeeze(…) удаляет одиночные размерности гиперматрицы
или ND-мерного массива, для которых размер равен 1.
Если на входе hypIn является матрицей, то она возвращается
как есть.
![]() | Scilab сжимает наивысшие одиночные размерности автоматически. |
Примеры
// для двумерных входных матриц => нет действий u = squeeze(ones(1,4)) size(u) // автосжатие высших одиночных размерностей: v = ones(2,3,1,1); size(v) // для фактического входного ND-мерного массива: w = squeeze(ones(1,3,1,4)) size(w) // для четырёхмерного cell-массива c = cat(4, {%t}, {%pi}, {"abc"}); size(c) x = squeeze(c) size(x)
--> u = squeeze(ones(1,4))
u =
1. 1. 1. 1.
--> size(u)
ans =
1. 4.
--> // автосжатие высших одиночных размерностей:
--> v = ones(2,3,1,1);
--> size(v)
ans =
2. 3.
--> // для фактического входного ND-мерного массива:
--> w = squeeze(ones(1,3,1,4))
w =
1. 1. 1. 1.
1. 1. 1. 1.
1. 1. 1. 1.
--> size(w)
ans =
3. 4.
--> // для четырёхмерного cell-массива
--> c = cat(4, {%t}, {%pi}, {"abc"});
--> size(c)
ans =
1. 1. 1. 3.
--> x = squeeze(c)
x =
[1x1 boolean ]
[1x1 constant]
[1x1 string ]
--> size(x)
ans =
3. 1.
Смотрите также
- matrix — изменение вектора или матрицы в матрицу иных размеров
- гиперматрицы — объект Scilab'а, N-мерная матрица в Scilab'е
| Report an issue | ||
| << resize_matrix | Манипуляции с матрицами | tril >> |
