Open In App
Related Articles

How to count the frequency of unique values in NumPy array?

Improve Article
Improve
Save Article
Save
Like Article
Like

Let’s see How to count the frequency of unique values in NumPy array. Python’s numpy library provides a numpy.unique() function to find the unique elements and it’s corresponding frequency in a numpy array.

Syntax: numpy.unique(arr, return_counts=False)

Return: Sorted unique elements of an array with their corresponding frequency counts NumPy array.

Now, Let’s see examples:

Example 1:

Python3




# import library
import numpy as np
 
ini_array = np.array([10, 20, 5,
                      10, 8, 20,
                      8, 9])
 
# Get a tuple of unique values
# and their frequency in
# numpy array
unique, frequency = np.unique(ini_array,
                              return_counts = True)
# print unique values array
print("Unique Values:",
      unique)
 
# print frequency array
print("Frequency Values:",
      frequency)


Output:

Unique Values: [ 5  8  9 10 20]
Frequency Values: [1 2 1 2 2]

Example 2:

Python3




# import library
import numpy as np
 
# create a 1d-array
ini_array = np.array([10, 20, 5,
                    10, 8, 20,
                    8, 9])
 
# Get a tuple of unique values
# and their frequency
# in numpy array
unique, frequency = np.unique(ini_array,
                              return_counts = True)
 
# convert both into one numpy array
count = np.asarray((unique, frequency ))
 
print("The values and their frequency are:\n",
     count)


Output:

The values and their frequency are:
[[ 5  8  9 10 20]
[ 1  2  1  2  2]]

Example 3:

Python3




# import library
import numpy as np
 
# create a 1d-array
ini_array = np.array([10, 20, 5,
                      10, 8, 20,
                      8, 9])
 
# Get a tuple of unique values
# and their frequency in
# numpy array
unique, frequency = np.unique(ini_array,
                              return_counts = True)
 
# convert both into one numpy array
# and then transpose it
count = np.asarray((unique,frequency )).T
 
print("The values and their frequency are in transpose form:\n",
     count)


Output:

The values and their frequency are in transpose form:
[[ 5  1]
[ 8  2]
[ 9  1]
[10  2]
[20  2]]

Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Last Updated : 10 Apr, 2023
Like Article
Save Article
Similar Reads
Related Tutorials