Return the Upper triangle of an array and set the diagonal above to zero elements in Numpy


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.

Here, k = 0 (the default) is the main diagonal, k < 0 is below it and k > 0 is above. The function returns a copy of an array with the elements below the k-th diagonal zeroed. For arrays with ndim exceeding 2, triu will apply to the final two axes.

Steps

At first, import the required library −

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 2nd parameter is the 'k' i.e. the diagonal above which to zero elements. Here, k = 0 (the default) is the main diagonal, k < 0 is below it and k > 0 is above.' Array −

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

Example

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 print("
Result...
",np.triu(arr, k = 0))

Output

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

Updated on: 17-Feb-2022

341 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements