  # numpy.squeeze () in Python

NumPy | Python Methods and Functions

`numpy.squeeze()` is used when we want to remove one-dimensional records from an array form.

Syntax: numpy.squeeze (arr, axis = None)

Parameters:
arr: [array_like] Input array.
axis: [None or int or tuple of ints, optional] Selects a subset of the single-dimensional entries in the shape. If an axis is selected with shape entry greater than one, an error is raised.

Return:
squeezed [ndarray] The input array, but with all or a subset of the dimensions of length 1 removed. This is always a itself or a view into arr.

Code # 1:

` `

` # Python program explaining # numpy.squeeze function    import numpy as geek   in_arr = geek.array ([[[ 2 , 2 , 2 ], [ 2 , 2 , 2 ]]])    print ( "Input array:" , in_arr)  print ( "Shape of input array:" , in_arr.shape)    out_arr = geek.squeeze (in_arr)    print ( "output squeezed array:" , out_arr) print ( "Shape of output array:" , out_arr.shape) `

Exit :

` Input array: [[[2 2 2] [2 2 2]]] Shape of input array: (1, 2, 3) output squeezed array: [[2 2 2] [2 2 2]] Shape of output array: (2, 3) `

Code # 2:

 ` # Python program explaining ` ` # numpy.squeeze function `` import numpy as geek in_arr = geek.arange ( 9 ). reshape ( 1 , 3 , 3 )    print ( " Input array: " , in_arr)  `` out_arr ` ` = ` ` geek.squeeze (in_arr, axis ` ` = ` ` 0 ` `) `   ` print ` ` (` ` "output array:" ` `, out_arr) ` ` print ` ` (` ` "The shapes of Input and Output array:" ` `) ` ` `  ` print ` ` (in_arr.shape, out_arr.shape) `

Output:

` Input array: [ [[0 1 2] [3 4 5] [6 7 8]]] output array: [[0 1 2] [3 4 5] [6 7 8]] The shapes of Input and Output array: (1, 3 , 3) (3, 3) `

Notes:

`  ValueE rror:  If axis is not None, and an axis being squeezed is not of length 1. `

Code # 3:

 ` # Python program explaining ` ` # numpy.squeeze function ` ` # when a value error occurs ` ` import ` ` numpy as geek `   ` in_arr ` ` = ` ` geek.arange (` ` 9 ` `). reshape (` ` 1 ` `, ` ` 3 ` `, ` ` 3 ` `) ` ` `  ` print ` ` (` `" Input array: "` `, in_arr) ` ` out_arr ` ` = ` ` geek.squeeze (in_arr, axis ` ` = ` ` 1 ` `) ` `  `` print ( "output array:" , out_arr)  print ( "The shapes of Input and Output array:" )   print (in_arr.shape, out_arr.shape) `

Output:

` ValueError Traceback (most recent call last) in () 5 6 print ("Input array:", in_arr) --- - & gt; 7 out_arr = geek.squeeze (in_arr, axis = 1) 8 print ("output array:", out_arr) 9 print ("The shapes of Input and Output array:") ~ Anaconda3libsite-packages umpycorefromnumeric.py in squeeze (a, axis) 1196 try: 1197 # First try to use the new axis = parameter - & gt; 1198 return squeeze (axis = axis) 1199 except TypeError: 1200 # For backwards compatibility ValueError: cannot select an axis to squeeze out which has size not equal to one `