使用Numpy返回数组的上三角矩阵,并将主对角线元素置零


要返回数组的上三角矩阵,请在 Python Numpy 中使用 **numpy.triu()** 方法。

  • 第一个参数是输入数组。
  • 第二个参数是 'k',即要将元素置零的对角线上方。

这里,k = 0(默认值)为主对角线,k < 0 在其下方,k > 0 在其上方。数组。k = 1 的值也是将主对角线置零。该函数返回一个数组的副本,其中 k-th 对角线以下的元素被置零。对于维度超过 2 的数组,triu 将应用于最后两个轴。

步骤

首先,导入所需的库。

import numpy as np

创建一个二维数组。

arr = np.array([[36, 36, 78, 88], [92, 81, 98, 45], [22, 67, 54, 69 ], [69, 80, 80, 99]])

显示我们的数组。

print("Array...
",arr)

获取数据类型。

print("
Array datatype...
",arr.dtype)

获取数组的维度。

print("
Array Dimensions...
",arr.ndim)

获取数组的形状。

print("
Our Array Shape...
",arr.shape)

获取数组的元素数量。

print("
Elements in the Array...
",arr.size)

使用 Python Numpy 中的 numpy.triu() 方法返回数组的上三角矩阵。第二个参数是 'k',即要将元素置零的对角线上方。

print("
Result...
",np.triu(arr, k = 1))

示例

import numpy as np

# Create a 2d array
arr = np.array([[36, 36, 78, 88], [92, 81, 98, 45], [22, 67, 54, 69], [69, 80, 80, 99]])

# Displaying our array
print("Array...
",arr) # Get the datatype print("
Array datatype...
",arr.dtype) # Get the dimensions of the Array print("
Array Dimensions...
",arr.ndim) # Get the shape of the Array print("
Our Array Shape...
",arr.shape) # Get the number of elements of the Array print("
Elements in the Array...
",arr.size) # To return the upper triangle of an array, use the numpy.triu() method in Python Numpy # The 1st parameter is the input array # The 2nd parameter is the 'k' i.e. the diagonal above which to zero elements. # k = 0 (the default) is the main diagonal, k < 0 is below it and k > 0 is above.' array # The k = 1 value is to zero the main diagonal as well print("
Result...
",np.triu(arr, k = 1))

输出

Array...
[[36 36 78 88]
[92 81 98 45]
[22 67 54 69]
[69 80 80 99]]

Array datatype...
int64

Array Dimensions...
2

Our Array Shape...
(4, 4)

Elements in the Array...
16

Result...
[[ 0 36 78 88]
[ 0 0 98 45]
[ 0 0 0 69]
[ 0 0 0 0]]

更新于: 2022年2月17日

627 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告