MATLAB 帮助中心
单位矩阵
I = eye
I = eye(n)
I = eye(n,m)
I = eye(sz)
I = eye(___,typename)
I = eye(___,like=p)
I = eye 返回标量 1。
I
1
I = eye(n) 返回一个主对角线元素为 1 且其他位置元素为 0 的 n×n 单位矩阵。
n
示例
I = eye(n,m) 返回一个主对角线元素为 1 且其他位置元素为 0 的 n×m 矩阵。
m
I = eye(sz) 返回一个主对角线元素为 1 且其他位置元素为 0 的数组。大小向量 sz 定义 size(I)。例如,eye([2,3]) 返回一个主对角线元素为 1 且其他位置元素为 0 的 2×3 数组。
sz
size(I)
eye([2,3])
I = eye(___,typename) 在上述语法的基础上进一步指定 I 的数据类型(类)。例如,eye(5,"int8") 返回由 8 位整数组成的 5×5 单位矩阵。
typename
eye(5,"int8")
I = eye(___,like=p) 指定 I 具有与数值变量 p 相同的数据类型、稀疏性和复/实性(实数或复数)。
p
全部折叠
创建一个 4×4 单位矩阵。
I = eye(4)
I = 4×4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
创建一个 2×3 单位矩阵。
I = eye(2,3)
I = 2×3 1 0 0 0 1 0
创建一个 3×1 单位向量。
sz = [3,1]; I = eye(sz)
I = 3×1 1 0 0
创建一个元素为 32 位无符号整数的 3×3 单位矩阵。
I = eye(3,"uint32")
I = 3×3 uint32 matrix 1 0 0 0 1 0 0 0 1
class(I)
ans = 'uint32'
创建一个元素值不是实数,而是与现有数组类似的复数的 2×2 单位矩阵。
定义一个复数向量。
p = [1+2i 3i];
创建一个与 p 类似的单位复矩阵。
I = eye(2,like=p)
I = 2×2 complex 1.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 1.0000 + 0.0000i
定义一个 5×5 稀疏矩阵。
p = sparse(5,5,pi);
创建一个与 P 类似的 5×5 单位稀疏矩阵。
P
I = eye(5,like=p)
I = 5×5 sparse double matrix (5 nonzeros) (1,1) 1 (2,2) 1 (3,3) 1 (4,4) 1 (5,5) 1
定义一个单精度的 2×2 矩阵。
p = single([1 3; 2 4]);
创建一个与 p 具有相同大小和数据类型的单位矩阵。
I = eye(size(p),like=p)
I = 2×2 single matrix 1 0 0 1
ans = 'single'
I 的第一维度的大小,指定为整数值。
如果 n 为唯一的整数输入参量,则 I 为一个 n×n 单位方阵。
如果 n 为 0,则 I 为一个空矩阵。
0
如果 n 为负数,则将其视为 0。
数据类型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
double
single
int8
int16
int32
int64
uint8
uint16
uint32
uint64
I 的第二维度的大小,指定为整数值。
如果 m 为 0,则 I 为一个空矩阵。
如果 m 为负数,则将其视为 0。
I 的大小,指定为不超过两个整数值的行向量。
如果 sz 的某个元素为 0,则 I 为一个空矩阵。
如果 sz 的某个元素为负数,则将该元素视为 0。
示例: sz = [2 3] 将 I 定义为 2×3 矩阵。
sz = [2 3]
"double"
"single"
"logical"
"int8"
"uint8"
输出类,指定为 "double"、"single"、"logical"、"int8"、"uint8"、"int16"、"uint16"、"int32"、"uint32"、"int64" 或 "uint64"。
"int16"
"uint16"
"int32"
"uint32"
"int64"
"uint64"
原型,指定为数值变量。
数据类型: double | single | logical | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 复数支持: 是
logical
单位矩阵,以标量或矩阵形式返回。
全部展开
用法说明和限制:
typename 必须为内置的 MATLAB® 数值类型。不会为其他类调用静态 eye 方法。例如,eye(m, n, 'myclass') 不会调用 myclass.eye(m,n)。
eye
eye(m, n, 'myclass')
myclass.eye(m,n)
大小参量必须具有固定大小。
typename 必须为内置的 MATLAB 数值类型。不会为其他类调用静态 eye 方法。例如,eye(m, n, 'myclass') 不会调用 myclass.eye(m,n)。
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
eye 函数支持 GPU 数组输入,但有以下用法说明和限制:
您可以将 typename 指定为 'gpuArray'。如果将 typename 指定为 'gpuArray',则数组的默认基础类型是 double。
'gpuArray'
要创建基础类型 datatype 的 GPU 数组,请在 typename 之前将该基础类型指定为附加参量。例如,I = eye(3,datatype,'gpuArray') 创建一个基础类型 datatype 的 3×3 GPU 单位矩阵。
datatype
I = eye(3,datatype,'gpuArray')
您可以将基础类型 datatype 指定为以下选项之一:
'double'
'single'
'logical'
'int8'
'uint8'
'int16'
'uint16'
'int32'
'uint32'
'int64'
'uint64'
您也可以将数值变量 p 指定为 gpuArray。
gpuArray
如果将 p 指定为 gpuArray,则返回的数组的基础类型与 p 相同。
有关详细信息,请参阅在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。
您可以将 typename 指定为 'codistributed' 或 'distributed'。如果将 typename 指定为 'codistributed' 或 'distributed',则返回的数组的默认基础类型为 double。
'codistributed'
'distributed'
要创建基础类型 datatype 的分布式或共存分布式数组,请在 typename 之前将该基础类型指定为附加参量。例如,I = eye(3,datatype,'distributed') 创建一个基础类型 datatype 的 3×3 分布式单位矩阵。
I = eye(3,datatype,'distributed')
您也可以将 p 指定为 codistributed 或 distributed 数组。
codistributed
distributed
如果将 p 指定为 codistributed 或 distributed 数组,则返回的数组的基础类型与 p 相同。
有关其他 codistributed 语法,请参阅 eye (codistributed) (Parallel Computing Toolbox)。
eye (codistributed)
有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
在 R2006a 之前推出
speye | ones | zeros
speye
ones
zeros
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处