numpy.triu
numpy.triu(m, k=0) [source]
数组的上三角。
返回矩阵的副本,其中第k个对角线以下的元素为零。
请参阅tril
的文档以获取更多详细信息。
例子
1)基本用法
import numpy as np # 创建一个2D数组 a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # 提取上三角矩阵 upper_triangle = np.triu(a) print("原始数组:") print(a) print("\n上三角矩阵:") print(upper_triangle)
2)使用偏移量 k
python复制代码import numpy as np # 创建一个2D数组 a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # 提取上三角矩阵,偏移量为1 upper_triangle_k1 = np.triu(a, k=1) print("原始数组:") print(a) print("\n上三角矩阵(k=1):") print(upper_triangle_k1)
3)高维数组
import numpy as np # 创建一个3D数组 a = np.array([[[1, 2, 3], [4, 5, 6], [7, 8, 9]], [[10, 11, 12], [13, 14, 15], [16, 17, 18]]]) # 提取上三角矩阵 upper_triangle_3d = np.triu(a) print("原始3D数组:") print(a) print("\n上三角3D矩阵:") print(upper_triangle_3d)
4)使用示例
import numpy as np # 创建一个4x3的二维数组 a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # 提取上三角矩阵,偏移量为 -1 upper_triangle_k_minus1 = np.triu(a, -1) print("原始数组:") print(a) print("\n上三角矩阵(k=-1):") print(upper_triangle_k_minus1)