2026a

# pagetranspose


按页转置

函数库: TyMath

# 语法

Y = pagetranspose(X)

# 说明

Y = pagetranspose(X) 将非共轭转置应用于 N 维数组 X 的每页。输出 Y[:,:,i] 的每页都是通过对 X 中的对应页进行转置来找到的,如 transpose(X[:,:,i]) 中所示。示例

# 示例

转置 N 维数组的页

创建一个三维数组 A ,然后使用 pagetranspose 转置数组的每页。

using TyMath
using TyBase
r = repelem((1:3)',3,1)
A = cat(r, 2*r, 3*r, dims=3)
A = 3×3×3 Array{Int64, 3}:
[:, :, 1] =
 1  2  3
 1  2  3
 1  2  3

[:, :, 2] =
 2  4  6
 2  4  6
 2  4  6

[:, :, 3] =
 3  6  9
 3  6  9
 3  6  9
B = pagetranspose(A)
B = 3×3×3 Array{Int64, 3}:
[:, :, 1] =
 1  1  1
 2  2  2
 3  3  3

[:, :, 2] =
 2  2  2
 4  4  4
 6  6  6

[:, :, 3] =
 3  3  3
 6  6  6
 9  9  9

# 输入参数

X - 输入数组
多维数组

输入数组,指定为多维数组。

数据类型: Int | Float | Bool

复数支持:

# 详细信息

数组页

像 pagetranspose 这样的分页运算函数对排列成一个多维数组的二维矩阵进行运算。例如,对于三维数组,数组的第三个维度中的元素通常称为页面,因为它们像书籍中的页一样堆叠在一起。每个页面都是由函数对其进行运算的一个矩阵。

您也可以将二维矩阵的集合组成一个更高维度的数组,如四维或五维数组,在这种情况下, pagetranspose 仍将数组的基本单位视为可对其进行运算的一个二维矩阵,如 X[:,:,i,j,k,l] 。

cat 函数可用于将矩阵集合组合成一个多维数组,而 zeros 函数可用于预分配一个多维数组。

# 提示

按页转置等效于用 permutedims(X,[2,1,3:ndims(X)...]) 置换数组的前两个维度。

# 另请参阅

transpose | pagectranspose