Engee 文档

Permute Matrix

矩阵行或列的排列组合。

类型: PermuteMatrix

图书馆中的路径:

/Basic/Matrix Operations/Permute Matrix

说明

通过重新排列和/或复制输入矩阵的列(行),Permute Matrix 程序块可形成一个新矩阵。该程序块根据从 P 输入中接收到的列(行)数,对大小为 M 乘 N 的输入矩阵 A 的行或列重新排序。

端口

输入

A - 输入矩阵
标量 | 向量 | 矩阵

初始矩阵。

数据类型: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

*支持复数:是

P - 排列的列(行)数
标量 | 向量 | 矩阵

矩阵 A 的列(行)数,新矩阵将由此形成。标量或矢量。

数据类型: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

支持复数:否

输出

端口_1 - 输出矩阵
标量 | 向量 | 矩阵

将输入矩阵的行或列重新排列后形成的输出矩阵。输出的数据类型与输入相同。原始矩阵的维数保持不变。

数据类型: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

*支持复数:是

参数

置换 - 置换方法
列(默认) | 行

指定重新排列输入矩阵的列还是行,以生成输出矩阵。

如果 Permute 参数设置为

  • 行"--程序块使用输入矩阵 A 的行创建具有相同列维的矩阵。输入 P 是一个长度为 L 的向量,其元素决定了输入矩阵 A 的每一行在输出矩阵 L 乘 N 中的位置。

    为了重新排列行,程序块将到达端口 A 的长度为 M 的无向向量视为 M 乘 1 矩阵。

  • 列"--程序块使用输入矩阵 A 的列创建一个具有相同行数的矩阵。一个长度为 L 的向量被提供到 P 输入端,其元素决定了输入矩阵 A 的每一列在输出矩阵 M 乘 L 中的位置。

    为了重新排列列,程序块将到达端口 A 的长度为 N 的无向向量视为 1 乘 N 矩阵。

索引模式 - 索引模式
One-based (default) |Zero-based - 索引模式

当设置`One-based`时,置换向量 P 中的值 1 指输入矩阵 A 的第一行或第一列。当设置了 Zero-based 时,P 中的值 0 指的是 A 的第一行或第一列。

无效置换索引 - 对无效索引值的响应
剪贴索引(默认)` | 剪切并警告` | 生成错误

对无效索引值的响应。如果输入 P 的索引值指向输入矩阵 A 中不存在的行或列,程序块将按照此参数的规定做出反应。可以有以下选项

  • 剪切索引` - 将索引剪切为最接近的有效值(行排列为 1 或 M,列排列为 1 或 N),不发出警告。

    *例如对于 3 乘 7 的输入矩阵,列索引等于 9 将被剪切为 7,行索引等于−2 将被剪切为 1。

  • 剪切并警告"--与前一个选项相同;在未来版本中,选择该选项将在 Engee 命令行窗口中显示警告信息。

  • 生成错误"- 显示错误对话框并终止模拟。

当 P 的长度不等于 Permute 维度大小时出错 - P 长度的错误信息
关闭(默认)` | 开启

如果置换向量 P 的长度不等于输入矩阵 A 的行数或列数,则显示错误对话框并停止模拟的选项。

您可以将此选项设置为 "on "来打开错误对话框并终止模拟。