Related Articles
Finding the k smallest values of a NumPy array
• Last Updated : 02 Sep, 2020

In this article, let us see how to find the k number of the smallest values from a NumPy array.

Examples:

```Input: [1,3,5,2,4,6]
k = 3

Output: [1,2,3]
```

Method 1: Using np.sort()

Approach:

1. Create a NumPy array.
2. Determine the value of k.
3. Sort the array in ascending order using the sort() method.
4. Print the first k values of the sorted array.

## Python3

 `# importing the modules``import` `numpy as np`` ` `# creating the array ``arr ``=` `np.array([``23``, ``12``, ``1``, ``3``, ``4``, ``5``, ``6``])``print``(``"The Original Array Content"``)``print``(arr)`` ` `# value of k``k ``=` `4`` ` `# sorting the array``arr1 ``=` `np.sort(arr)`` ` `# k smallest number of array``print``(k, ``"smallest elements of the array"``)``print``(arr1[:k])`

Output:

```The Original Array Content
[23 12  1  3  4  5  6]
4 smallest elements of the array
[1 3 4 5]
```

Method 2: Using np.argpartition()

Approach:

1. Create a NumPy array.
2. Determine the value of k.
3. Get the indexes of the smallest k elements using the argpartition() method.
4. Fetch the first k values from the array obtained from argpartition() and print their index values with respect to the original array.

## Python3

 `# importing the module``import` `numpy as np`` ` `# creating the array ``arr ``=` `np.array([``23``, ``12``, ``1``, ``3``, ``4``, ``5``, ``6``])``print``(``"The Original Array Content"``)``print``(arr)`` ` `# value of k``k ``=` `4`` ` `# using np.argpartition()``result ``=` `np.argpartition(arr, k)`` ` `# k smallest number of array``print``(k, ``"smallest elements of the array"``)``print``(arr[result[:k]])`

Output:

```The Original Array Content
[23 12  1  3  4  5  6]
4 smallest elements of the array
[4 3 1 5]
```

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.

My Personal Notes arrow_drop_up