numpy.atleast_3d() function is used when we want to Convert inputs to arrays with at least three dimension. Scalar, 1 and 2 dimensional inputs are converted to 3-dimensional arrays, whilst higher-dimensional inputs are preserved.
Input includes scalar, lists, lists of tuples, tuples, tuples of tuples, tuples of lists and ndarrays.
Syntax : numpy.atleast_3d(*arrays) Parameters : arrays1, arrays2, ... : [array_like] One or more array-like sequences. Non-array inputs are converted to arrays. Arrays that already have three or more dimensions are preserved. Return : An array, or list of arrays, each with arr.ndim >= 3. Copies are avoided where possible, and views with three or more dimensions are returned. For example, a 1-D array of shape (N, ) becomes a view of shape (1, N, 1), and a 2-D array of shape (M, N) becomes a view of shape (M, N, 1).Code #1 : Working
# Python program explaining
# numpy.atleast_3d() function
import numpy as geek
in_num = 10
print ("Input number : ", in_num)
out_arr = geek.atleast_3d(in_num)
print ("output 3d array from input number : ", out_arr)
Input number : 10 output 3d array from input number : [[[10]]]Code #2 : Working
# Python program explaining
# numpy.atleast_3d() function
import numpy as geek
my_list = [[2, 6, 10],
[8, 12, 16]]
print ("Input list : ", my_list)
out_arr = geek.atleast_3d(my_list)
print ("output array : ", out_arr)
Input list : [[2, 6, 10], [8, 12, 16]] output array : [[[ 2] [ 6] [10]] [[ 8] [12] [16]]]Code #3 : Working
# Python program explaining
# numpy.atleast_3d() function
# when inputs are in high dimension
import numpy as geek
in_arr = geek.arange(16).reshape(1, 4, 4)
print ("Input array :\n ", in_arr)
out_arr = geek.atleast_3d(in_arr)
print ("output array :\n ", out_arr)
print(in_arr is out_arr)
Output :
Input array : [[[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]]] output array : [[[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]]] True