📅  最后修改于: 2023-12-03 15:04:33.831000             🧑  作者: Mango
在Python中, numpy.triu()
是一个函数,用于返回输入矩阵的右上三角形。
numpy.triu()
函数返回由给定矩阵的右上三角形构成的新矩阵。
右上三角形是由对角线及其上方的所有元素组成的。
下面是该函数的语法:
numpy.triu(m, k=0)
m
: 输入的矩阵k
: 对角线的位置。默认值为0。k > 0 时,会在主对角线上方的位置上属于第 k 个位置上的所有元素都为0;k < 0 时,则是在主对角线下方。函数返回由给定矩阵的右上三角形构成的新矩阵。
import numpy as np
# 创建一个5x5的矩阵。
m = np.array([[1, 2, 3, 4, 5],
[6, 7, 8, 9, 10],
[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25]])
# 使用numpy.triu()获取矩阵的右上角矩阵,对角线为0
right_upper_matrix = np.triu(m)
print("右上角矩阵: \n", right_upper_matrix)
输出结果:
右上角矩阵:
[[ 1 2 3 4 5]
[ 0 7 8 9 10]
[ 0 0 13 14 15]
[ 0 0 0 19 20]
[ 0 0 0 0 25]]
import numpy as np
# 创建一个5x5的矩阵。
m = np.array([[1, 2, 3, 4, 5],
[6, 7, 8, 9, 10],
[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25]])
# 使用numpy.triu()获取矩阵的主对角线以上两个位置矩阵
right_upper_matrix = np.triu(m, k=2)
print("右上角矩阵(对角线以上两个位置): \n", right_upper_matrix)
输出结果:
右上角矩阵(对角线以上两个位置):
[[ 0 0 3 4 5]
[ 0 0 0 9 10]
[ 0 0 0 0 15]
[ 0 0 0 0 0]
[ 0 0 0 0 0]]
numpy.triu()
函数是将一个矩阵的下三角元素置为0,获取上半部分的矩阵的功能。
使用 numpy.triu()
可以实现快速获取矩阵的对角线以上元素,对于一些对角矩阵操作很有用。