首页 > 其他分享 >R语言对称矩阵提取上三角/下三角矩阵?

R语言对称矩阵提取上三角/下三角矩阵?

时间:2023-04-13 22:57:03浏览次数:43  
标签:col.2 提取 col.1 col.3 三角 矩阵 col.4

目标

输入矩阵

      col.1 col.2 col.3 col.4
row.1     1     2     3     4
row.2     5     6     7     8
row.3     9    10    11    12
row.4    13    14    15    16

输出矩阵

      col.1 col.2 col.3 col.4
row.1     1     2     3     4
row.2     0     6     7     8
row.3     0     0    11    12
row.4     0     0     0    16

代码

mat.1 <- matrix(1:16, # 1—16个向量
                ncol = 4, # 4列
                nrow = 4, # 4行
                byrow=TRUE, # byrow=T 表示向量按行的顺序进行,默认的话,会按列的顺序进行排列
                dimnames = list(c(paste("x", 1:4, sep = ".")), # 对维度(行列)进行命名, 可以这么看list(x,y) 表示行列
                                c(paste("y", 1:4, sep = ".")))) # x由x.1....x.4组成,y由y.1....y.4组成
mat.1
rownames(mat.1) <- paste("row", 1:4, sep=".")
colnames(mat.1) <- paste("col", 1:4, sep=".")
mat.1
# 生成上三角矩阵
# diag参数如果为TRUE,表示把矩阵对角也包括进来。设置为FALSE就是不包括。
# mat.1[!upper.tri(mat.1, diag = TRUE)] <- ""
mat.1[!upper.tri(mat.1, diag = TRUE)] <- 0
mat.1
mat.1[!upper.tri(mat.1, diag = F)] <- NA
mat.1

# 生成下三角矩阵
mat.1[!lower.tri(mat.1, diag = TRUE)] <- 0
mat.1

Ref:https://ask.csdn.net/questions/755432

标签:col.2,提取,col.1,col.3,三角,矩阵,col.4
From: https://www.cnblogs.com/jessepeng/p/17316862.html

相关文章

  • HDU 2604 Queuing(矩阵快速幂)
    题目地址:HDU2604这题只要推出公式来,构造矩阵就很容易了,问题是推不出公式来。。TAT。。从递推的思路考虑,用f(n)表示n个人满足条件的结果,如果最后一个是m则前n-1人可以任意排列,有f(n-1)种;如果是f,则考虑后两位mf和ff,没有一定满足或者一定不满足的状态,所以继续考虑一位,考虑后三位......
  • HDU 1588 Gauss Fibonacci(矩阵快速幂)
    题目地址:HDU1588用于构造斐波那契的矩阵为1,11,0设这个矩阵为A。sum=f(b)+f(k+b)+f(2*k+b)+f(3*k+b)+........+f((n-1)*k+b)<=>sum=A^b+A^(k+b)+A^(2*k+b)+A^(3*k+b)+........+A^((n-1)*k+b)<=>sum=A^b+A^b*(A^k+A^2*k+A^3*k+.......+A^((n-1)*k))(1)设矩阵B为A^k;那么(1......
  • HDU 3306 Another kind of Fibonacci(矩阵快速幂)
    题目地址:HDU3306没什么智商的题目,只要把构造矩阵硬算出来就行。代码如下:#include<iostream>#include<cstdio>#include<string>#include<cstring>#include<stdlib.h>#include<math.h>#include<ctype.h>#include<queue>#include<......
  • 负荷需求响应matlab 考虑电价需求弹性系数矩阵的负荷需求响应
    负荷需求响应matlab考虑电价需求弹性系数矩阵的负荷需求响应,采用matlab进行编程,通过价格需求矩阵确定峰谷平负荷调节量,实现了理想的削峰填谷,程序运行可靠,有详实的参考资料。YID:9550676854173285......
  • 如何从tar.gz包中,提取某些文件?
    方法非常的简单。 语法tar-zxvftar.gz包的名字提取的文件1提取的文件2提取的文件3提取多个文件,多个文件之间用空格就可以了 示例 有一个tar.gz的包:linux-amd64-filebrowser.tar.gz 包中包含的文件:[root@node142~]#tar-tvflinux-amd64-fil......
  • 使用反三角函数来计算两个矩形框中心点之间的夹角
    首先,求出两个矩形框中心点的横纵坐标差,再使用反三角函数(如反正切函数)求出夹角的弧度数。最后,将弧度数转换为角度数。如果点(x,y)落在第一、第二象限,则返回的角度值为负数;如果点落在第三象限,则返回的角度值为正数;如果点落在第四象限,则返回的角度值为正数或负数,具体取决于y和x......
  • #yyds干货盘点# LeetCode面试题:搜索二维矩阵
    1.简述:编写一个高效的算法来判断 mxn 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。 示例1:输入:matrix=[[1,3,5,7],[10,11,16,20],[23,30,34,60]],target=3输出:true示例2:输入:matrix=[[1,......
  • python习题-杨辉三角
    【题目描述】输出n(0<n)行杨辉三角形,n由用户输入。【源代码程序】n=int(input("请输入要打印的杨辉三角的行数:"))#初始化杨辉三角的第一行triangle=[[1]]#循环生成杨辉三角foriinrange(1,n):#初始化当前行的第一个元素为1row=[1]#循环生成当......
  • 记一次提取Shaft缓存
    引子aka,pixiv在境内没办法正常访问,于是有了一众第三方App能够实现直连pixiv的操作。通过绕过SNI审查的方式实现直连,其中我所提到的Shaft就是其中之一。ref:https://github.com/CeuiLiSA/Pixiv-Shaft/issues/243ref:https://github.com/CeuiLiSA/Pixiv-Shaft背景介绍有一台......
  • 力扣74. 搜索二维矩阵
    编写一个高效的算法来判断 mxn 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。 示例1:   输入:matrix=[[1,3,5,7],[10,11,16,20],[23,30,34,60]],target=3输出:true示例2: 输......