R

您所在的位置:网站首页 矩阵对角线定义 R

R

2024-04-27 07:59| 来源: 网络整理| 查看: 265

diag 矩阵对角线 Description

提取或替换矩阵的对角线,或构造对角矩阵。

Usage diag(x = 1, nrow, ncol, names = TRUE) diag(x) 矩阵、向量或 1D array ,或缺失。

nrow, ncol

当 x 不是矩阵时,结果的可选维度。

names

(当 x 是矩阵时)逻辑指示结果向量( x 的对角线)是否应从 dimnames(x) 继承 names (如果可用)。

value

单个值或长度等于当前对角线长度的向量。应该是可以强制转换为 x 的模式。

Details

diag 有四种不同的用途:

x 是一个矩阵,当它提取对角线时。

缺少 x 且指定了 nrow ,它返回单位矩阵。

x 是一个标量(长度为一个向量)和唯一的参数,它返回一个大小由标量给定的方单位矩阵。

x 是一个“数字”( complex 、 numeric 、 integer 、 logical 或 raw )向量,长度至少为 2 或有进一步的参数。这将返回一个具有给定对角线和零非对角线条目的矩阵。

在第一种情况下指定 nrow 或 ncol 是错误的。

Value

如果 x 是矩阵,则 diag(x) 返回 x 的对角线。如果矩阵 x 具有匹配的列名和行名,则生成的向量将具有 names 。

替换形式将矩阵 x 的对角线设置为给定值。

在所有其他情况下,该值是具有 nrow 行和 ncol 列的对角矩阵(如果未给出 ncol ,则矩阵为方阵)。这里 nrow 是从参数中获取的(如果指定),否则从 x 推断:如果这是一个长度为 2 或更多的向量(或一维数组),则其长度为行数,但如果它的长度为 1 并且 nrow 都不是也没有指定 ncol , nrow = as.integer(x) 。

当返回对角矩阵时,对角线元素都是1,除了第四种情况,当 x 给出对角线元素时:将根据需要进行回收或截断,但小数回收和截断会给出警告。

Note

如果 x 是长度为 1 的向量,则使用 diag(x) 可能会产生意想不到的效果。使用 diag(x, nrow = length(x)) 以获得一致的行为。

References

Becker, RA、Chambers, JM 和 Wilks, AR (1988) 新 S 语言。沃兹沃斯和布鲁克斯/科尔。

See Also

upper.tri 、 lower.tri 、 matrix 。

Examples dim(diag(3)) diag(10, 3, 4) # 你猜怎么了? all(diag(1:3) == {m


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3