Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
Apply accumulate for a multi-dimensional array along an axis in Numpy
To Accumulate the result of applying the operator to all elements, use the numpy.accumulate() method in Python Numpy. For a multi-dimensional array, accumulate is applied along only one axis
The numpy.ufunc has functions that operate element by element on whole arrays. The ufuncs are written in C (for speed) and linked into Python with NumPy’s ufunc facility.
A universal function (or ufunc for short) is a function that operates on ndarrays in an element-byelement fashion, supporting array broadcasting, type casting, and several other standard features. That is, a ufunc is a “vectorized” wrapper for a function that takes a fixed number of specific inputs and produces a fixed number of specific outputs.
Steps
At first, import the required library −
import numpy as np
Create a 2d array. The numpy.eye() returns a 2-D array with 1’s as the diagonal and 0’s elsewhere −
arr = np.eye(3)
Display the array −
print("Array...
", arr)
Get the type of the array −
print("\nOur Array type...
", arr.dtype)
Get the dimensions of the Array −
print("\nOur Array Dimensions...
",arr.ndim)
To Accumulate the result of applying the operator to all elements, use the numpy.accumulate() method in Python Numpy. For a multi-dimensional array, accumulate is applied along only one axis.
Add accumulate: Accumulate along axis 0 (rows) −
print("\nAdd accumulate...
",np.add.accumulate(arr, 0))
Multiply accumulate −
print("\nMultiply accumulate...
",np.multiply.accumulate(arr, 0))
Example
import numpy as np
import numpy.ma as ma
# The numpy.ufunc has functions that operate element by element on whole arrays.
# ufuncs are written in C (for speed) and linked into Python with NumPy’s ufunc facility
# Create a 2d array.
# The numpy.eye() returns a 2-D array with 1’s as the diagonal and 0’s elsewhere.
arr = np.eye(3)
# Display the array
print("Array...
", arr)
# Get the type of the array
print("\nOur Array type...
", arr.dtype)
# Get the dimensions of the Array
print("\nOur Array Dimensions...
",arr.ndim)
# To Accumulate the result of applying the operator to all elements, use the numpy.accumulate() method in Python Numpy
# For a multi-dimensional array, accumulate is applied along only one axis
# Add accumulate
# Accumulate along axis 0 (rows)
# Add accumulate
print("\nAdd accumulate...
",np.add.accumulate(arr, 0))
# Multiply accumulate
print("\nMultiply accumulate...
",np.multiply.accumulate(arr, 0))
Output
Array... [[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]] Our Array type... float64 Our Array Dimensions... 2 Add accumulate... [[1. 0. 0.] [1. 1. 0.] [1. 1. 1.]] Multiply accumulate... [[1. 0. 0.] [0. 0. 0.] [0. 0. 0.]]
