R语言产生对角阵、次对角阵等矩阵及矩阵运算

R语言产生各种类型的矩阵及矩阵运算

R语言产生一般的矩阵

# 依行排列,产生3行5列的矩阵
A = matrix(c(1:15),3,5,byrow=T)

《R语言产生对角阵、次对角阵等矩阵及矩阵运算》

R语言产生单位阵

#产生对角线元素为1的6x6的单位阵
A = diag(6)
#产生对角线元素为5的6x6的单位阵
A = diag(6)*5
#产对角线元素为1:6的6x6的对角阵
B = diag(c(1:6))

《R语言产生对角阵、次对角阵等矩阵及矩阵运算》
《R语言产生对角阵、次对角阵等矩阵及矩阵运算》

R语言产生次对角阵

#产生次对角线元素为1的6x6的矩阵阵
A = diag(6)*0
diag(A[-1,-6]) = 1#使第一行和最后一列去掉后的方阵的对角线为1

注:思路是为去掉某行某列的矩阵对角线赋值

《R语言产生对角阵、次对角阵等矩阵及矩阵运算》

R语言矩阵的常见运算

A = matrix(c(1:16),4,4,byrow=T);B = A
# 提取对角线元素、提取部分行,列,删除部分行列
diag(A)
A[1,];A[,2]
A[-1,];A[,-2]
# 提取下(上)三角矩阵的元素
A[lower.tri(A)]
A[upper.tri(A)]
# 矩阵四则运算
A+B					#加法
A-B					#减法
3*B					#数乘
A%*%B				#矩阵相乘
solve()			    #求逆函数

矩阵的运算还有很多需要我们大家一起探索!!!

    原文作者:D.Wan
    原文地址: https://blog.csdn.net/WANMOUD/article/details/109671286
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞