## numpy.ravel() in Python

The **numpy.ravel()** functions returns contiguous flattened array(1D array with all the input-array elements and with the same type as it). A copy is made only if needed.

**Syntax : **

numpy.ravel(array, order = 'C')

**Parameters : **

**array : **[array_like]Input array. **order : **[C-contiguous, F-contiguous, A-contiguous; optional] C-contiguous order in memory(last index varies the fastest) C order means that operating row-rise on the array will be slightly quicker FORTRAN-contiguous order in memory (first index varies the fastest). F order means that column-wise operations will be faster. ‘A’ means to read / write the elements in Fortran-like index order if, array is Fortran contiguous in memory, C-like order otherwise

**Return : **

Flattened array having same type as the Input array and and order as per choice.

**Code 1 : Shows that array.ravel is equivalent to reshape(-1, order=order)**

- Python

`# Python Program illustrating` `# numpy.ravel() method` `import` `numpy as geek` `array ` `=` `geek.arrange(` `15` `).reshape(` `3` `, ` `5` `)` `print` `(` `"Original array : \n"` `, array)` `# Output comes like [ 0 1 2 ..., 12 13 14]` `# as it is a long output, so it is the way of` `# showing output in Python` `print` `(` `"\nravel() : "` `, array.ravel())` `# This shows array.ravel is equivalent to reshape(-1, order=order).` `print` `(` `"\nnumpy.ravel() == numpy.reshape(-1)"` `)` `print` `(` `"Reshaping array : "` `, array.reshape(` `-` `1` `))` |

**Output : **

Original array : [[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14]] ravel() : [ 0 1 2 ..., 12 13 14] numpy.ravel() == numpy.reshape(-1) Reshaping array : [ 0 1 2 ..., 12 13 14]

**Code 2 :Showing ordering manipulation**

- Python

`# Python Program illustrating` `# numpy.ravel() method` `import` `numpy as geek` `array ` `=` `geek.arrange(` `15` `).reshape(` `3` `, ` `5` `)` `print` `(` `"Original array : \n"` `, array)` `# Output comes like [ 0 1 2 ..., 12 13 14]` `# as it is a long output, so it is the way of` `# showing output in Python` `# About :` `print` `(` `"\nAbout numpy.ravel() : "` `, array.ravel)` `print` `(` `"\nnumpy.ravel() : "` `, array.ravel())` `# Maintaining both 'A' and 'F' order` `print` `(` `"\nMaintains A Order : "` `, array.ravel(order ` `=` `'A'` `))` `# K-order preserving the ordering` `# 'K' means that is neither 'A' nor 'F'` `array2 ` `=` `geek.arrange(` `12` `).reshape(` `2` `,` `3` `,` `2` `).swapaxes(` `1` `,` `2` `)` `print` `(` `"\narray2 \n"` `, array2)` `print` `(` `"\nMaintains A Order : "` `, array2.ravel(order ` `=` `'K'` `))` |

**Output : **

Original array : [[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14]] About numpy.ravel() : numpy.ravel() : [ 0 1 2 ..., 12 13 14] Maintains A Order : [ 0 1 2 ..., 12 13 14] array2 [[[ 0 2 4] [ 1 3 5]] [[ 6 8 10] [ 7 9 11]]] Maintains A Order : [ 0 1 2 ..., 9 10 11]

**References : **

https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.ravel.html#numpy.ravel

**Note : **

These codes won’t run on online-ID. Please run them on your systems to explore the working

Last Updated on March 1, 2022 by admin