The `partition()`

function is **used to split up the input array accordingly** as per the given arguments.

- This function returns the partitioned copy of the input array.
- In the paritioned copy of the array, the elements are rearranged in such a way that the element in
**kth**position takes the position where it would be, had the array was sorted. - All elements
**smaller than the kth element**are moved**before this element**and all the elements that are equal or greater to it are moved behind it. - In case there are data elements with value equal to the kth element, then the ordering of the elements in the
**two partitions stays undefined**.

### Syntax of `numpy.partition()`

:

The syntax required to use this method is as follows:

`numpy.partition(arr, kth, axis, kind, order)`

**Parameters:**

let us now take a look at the parameters of this function:

**arr**This parameter indicates the input array that is to be sorted.**kth**It is an integer or sequence of integers. This parameter indicates the**index of the element**around which the partition needs to be performed.**axis**This parameter indicates the axis along which the elements would be sorted. The default value of this parameter is**-1**( means it sort along the last axis).**kind**This parameter is used to define the kind of sorting you want to perform.The default value of this parameter is**‘introselect’.****order**For an array`arr`

with fields defined in it, this argument is used to specify which fields to compare first, second, and so on.

**Returned Values:**

This Function will return an Array of the same type and shape** as the Input Array**.

## Example 1:

The code snippet is as follows where we will use `partition()`

function:

```
import numpy as np
inp_ar = np.array([2, 0, 1, 5, 4, 9, 78, 34])
print ("The Input array : ")
print(inp_ar)
output = np.partition(inp_ar, 5)
print ("The Output partitioned array : ")
print(output)
```

Output:

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

It is concluded from the output of the above code snippet that all the elements less than the element at 5th position which is **9** are placed to the left side of 9 and all the elements greater than 9 are placed to the right of the separator element (5th element).

Also, note that the order of elements appearing in **the output array is undefined**.

## Example 2:

```
import numpy as np
arr = np.array([7, 4, 8, 1, 10, 13])
print("The Input array is :")
print(arr)
output = np.partition(arr, (1, 3))
print("The Output Partitioned array is :")
print(output)
```

Output:

The Input array is : [7 4 8 1 10 13] The Output Partitioned array is : [1 4 7 8 10 13]