Return the gradient of an N-dimensional array over axis 0 in Python


The gradient is computed using second order accurate central differences in the interior points and either first or second order accurate one-sides (forward or backwards) differences at the boundaries. The returned gradient hence has the same shape as the input array. The 1st parameter, f is an Ndimensional array containing samples of a scalar function. The 2nd parameter is the varargs i.e. the spacing between f values. Default unitary spacing for all dimensions.

The 3rd parameter is the edge_order{1, 2} i.e. the Gradient is calculated using N-th order accurate differences at the boundaries. Default: 1. The 4th parameter is the Gradient, which is calculated only along the given axis or axes. The default (axis = None) is to calculate the gradient for all the axes of the input array. axis may be negative, in which case it counts from the last to the first axis. The method returns a list of ndarrays corresponding to the derivatives of f with respect to each dimension. Each derivative has the same shape as f.

Steps

At first, import the required library −

import numpy as np

Creating a numpy array using the array() method. We have added elements of float type −

arr = np.array([[20, 35, 57], [70, 85, 120]], dtype = float)

Display the array −

print("Our Array...\n",arr)

Check the Dimensions −

print("\nDimensions of our Array...\n",arr.ndim)

Get the Datatype −

print("\nDatatype of our Array object...\n",arr.dtype)

The gradient is computed using second order accurate central differences in the interior points and either first or second order accurate one-sides (forward or backwards) differences at the boundaries. The returned gradient hence has the same shape as the input array −

print("\nResult (gradient)...\n",np.gradient(arr, axis = 0))

Example

import numpy as np

# Creating a numpy array using the array() method
# We have added elements of float type
arr = np.array([[20, 35, 57], [70, 85, 120]], dtype = float)

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# The gradient is computed using second order accurate central differences in the interior points and either first or second order accurate one-sides (forward or backwards) differences at the boundaries. The returned gradient hence has the same shape as the input array.
print("\nResult (gradient)...\n",np.gradient(arr, axis = 0))

Output

Our Array...
[[ 20. 35. 57.]
[ 70. 85. 120.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Result (gradient)...
[[50. 50. 63.]
[50. 50. 63.]]

Updated on: 24-Feb-2022

181 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements