R语言 如何把矩阵的对角线元素设置为1
在这篇文章中,我们将讨论如何在R编程语言中设置矩阵的对角线元素为1。
矩阵是数字在行和列中的矩形排列。在一个矩阵中,我们知道行是水平方向的,列是垂直方向的。在R编程中,矩阵是二维的、同质的数据结构。
矩阵[row(matrix)==col(matrix)]
其中,矩阵是输入矩阵。row()将检查行元素,col()将检查列元素。
方法1:使用==运算符
为对角线元素赋值1的语法是。
matrix[row(matrix)==col(matrix)]=1
例1 :
在这个例子中,我们将创建5*5
的矩阵,并将对角线元素赋值为1。
# create 5*5 matrix.
matrix_data=matrix(1:25,nrow=5,ncol=5)
# display actual matrix
print(matrix_data)
# assign value to 1
matrix_data[row(matrix_data)==col(matrix_data)] =1
# display final
matrix_data
输出
例2 :
在这个例子中,我们将创建2*2
的矩阵,并将对角线元素赋值为1。
# create 2*2 matrix.
matrix_data=matrix(1:4,nrow=2,ncol=2)
# display actual matrix
print(matrix_data)
# assign value to 1
matrix_data[row(matrix_data)==col(matrix_data)] =1
# display final
matrix_data
输出
方法2:使用 diag()方法
diag()是用来获取对角线元素的,我们将把这个值设为1。
语法: diag(matrix)=1
其中,矩阵是输入矩阵。
例子
在这个例子中,我们将创建2*2
矩阵,并将1分配给对角线元素。
# create 2*2 matrix.
matrix_data=matrix(1:4,nrow=2,ncol=2)
# display actual matrix
print(matrix_data)
# assign value to 1
diag(matrix_data)=1
# display final
matrix_data
输出