numpy.partition () in Python

numpy.partition() is used to create a partitioned copy of the input array with rearranging its elements so that the value of the element at position k is in the position at which it would be in a sorted array. All elements smaller than the kth element move in front of this element, and all equal or larger ones move behind it. The order of the elements in the two sections is undefined.

Syntax: numpy.partition (arr, kth, axis = -1, kind = `introselect`, order = None)

Parameters:
arr: [array_like] Input array.
kth: [int or sequence of ints] Element index to partition by.
axis: [int or None] Axis along which to sort. If None, the array is flattened before sorting. The default is -1, which sorts along the last axis.
kind: Selection algorithm. Default is `introselect`.
order: [str or list of str] When arr is an array with fields defined, this argument specifies which fields to compare first, second, etc.

Return: [ndarray] Partitioned array of the same type and shape as arr.

Code # 1:

# Python program explaining
# partition () function

 

import numpy as geek

 
# input array

in_arr = geek.array ([ 2 , 0 1 , 5 , 4 , 9 ])

print ( "Input array:" , in_arr) 

 

out_arr = geek.partition (in_arr, 3 )

print ( " Output partitioned array: " , out_arr)

Output :

 Input array: [2 0 1 5 4 9] Output partitioned array: [ 0 1 2 4 5 9] 

Code # 2:

# Python program explaining
# partition () function

 

import numpy as geek

  
# input array

in_arr = geek.array ([ 2 , 0 1 , 5 , 4 , 9 , 3 ])

print ( "Input array:" , in_arr) 

 

out_arr = geek.partition (in_arr, ( 0 , 3 ))

print ( " Output partitioned array: " , out_arr)

Output :

 Input array: [2 0 1 5 4 9 3] Output partitioned array: [0 1 2 3 4 9 5]