R语言 如何创建单位矩阵

R语言 如何创建单位矩阵

在这篇文章中,我们将讨论如何在R编程语言中创建一个单位矩阵。

单位矩阵是包含所有零的矩阵,除了对角线元素等同于1。Base R提供了大量的方法来创建和定义R中的单位矩阵。

方法1:使用diag方法

R基中的diag()方法用于创建一个具有指定尺寸的方形矩阵。它将对角线的值指定为1,其余所有元素的值都是0。

语法:

diag(num)
Bash

其中,num – 相当于矩阵的行数和列数的数字。

例子:

# creating a diagonal matrix with 
# dimensions 3 x 3
diag_mat < - diag(3)
  
# printing identity matrix
print("Identity Matrix")
print(diag_mat)
Bash

输出

[1] "Identity Matrix" 
     [,1] [,2] [,3] 
[1,]    1    0    0 
[2,]    0    1    0 
[3,]    0    0    1
Bash

方法2:使用diag(nrow)方法

diag(nrow)方法可以用来指定单位矩阵的行数。它所分配的列数与指定的行数相当。

语法:

diag(nrow = )
Bash

其中, **** nrow – 单位矩阵的行数。

例子:

# creating a diagonal matrix with 
# dimensions 7 x 7
diag_mat < -diag(nrow=7)
  
# printing identity matrix
print("Identity Matrix")
print(diag_mat)
Bash

输出

[1] "Identity Matrix"
> print(diag_mat)
    [,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,]    1    0    0    0    0    0    0
[2,]    0    1    0    0    0    0    0
[3,]    0    0    1    0    0    0    0
[4,]    0    0    0    1    0    0    0
[5,]    0    0    0    0    1    0    0
[6,]    0    0    0    0    0    1    0
[7,]    0    0    0    0    0    0    1
Bash

方法3:创建一个零的矩阵,然后将对角线赋值为1

R中的matrix()方法可以用来创建一个具有指定值的矩阵,并将其分配给矩阵的声明行数和列数。

语法:

matrix ( val , rows, cols)
Bash

参数:

  • val – 要分配给所有单元格的值
  • rows – 单位矩阵的行数
  • cols – 单位矩阵的列

例子:

我们最初创建一个0的矩阵,然后用前面定义的diag()方法给对角线分配1。

# defining number of rows and columns
row < - 6
col < - 6
  
# creating a diagonal matrix with
# dimensions 6 x 6
diag_mat < - matrix(0, row, col)
  
# specifying the diagonal value to be 1
diag(diag_mat) < - 1
  
# printing identity matrix
print("Identity Matrix")
print(diag_mat)
Bash

输出

[1] "Identity Matrix"
> print(diag_mat)
    [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    1    0    0    0    0    0
[2,]    0    1    0    0    0    0
[3,]    0    0    1    0    0    0
[4,]    0    0    0    1    0    0
[5,]    0    0    0    0    1    0
[6,]    0    0    0    0    0    1
Bash

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册