# Python Program to Find Unique Elements in a Matrix

In the previous article, we have discussed Python Program to Find Maximum Element of each Row in a Matrix

Given a matrix, the task is to find the unique matrix elements in the given matrix in python.

What is a matrix:

A matrix is a rectangular sequence of numbers divided into columns and rows. A matrix element or entry is a number that appears in a matrix.

Example: Above is the matrix which contains 5 rows and 4 columns and having elements from 1 to 20.

In this order, the dimensions of a matrix indicate the number of rows and columns.

Here as there are 5 rows and 4 columns it is called a 5*4 matrix.

Examples:

Example1:

Input:

Given Matrix :
1 2 2
3 4 2
5 1 5

Output:

The unique matrix elements in the given matrix are :
1 2 3 4 5

Example2:

Input:

Given Matrix :
3 4 4
1 6 5
88 5 3

Output:

The unique matrix elements in the given matrix are :
3 4 1 6 5 88

## Program to Find Unique Elements in a Matrix in Python

Below are the ways to find the unique matrix elements in the given matrix in python:

### Method #1: Using Counter() function (Hashing, Static Input)

Approach:

• Import the Counter Function from collections using the import keyword.
• Give the matrix as static input and store it in a variable.
• Calculate the number of rows of the given matrix by calculating the length of the nested list using the len() function and store it in a variable mtrxrows.
• Calculate the number of columns of the given matrix by calculating the length of the first list in the nested list using the len() function and store it in a variable mtrxcolums.
• Take a list and initialize it to empty using [] or list() function.
• Loop till the given number of rows using the For loop.
• Inside the For loop, Iterate till the given number of columns using another Nested For loop(Inner For loop).
• Add the gvnmatrix[n][m] value to the list using the append() function where n is the iterator value of the parent For loop and m is the iterator value of the inner For loop.
• Apply the Counter function to the matrix elements list which stores the matrix element as key and its frequency as value
• Print all the keys of the mtrxfreq(using keys() function) which are the uniques values in the given matrix
• The Exit of the Program.

Below is the implementation:

# import the Counter Function from collections using the import keyword
from collections import Counter
# Give the matrix as static input and store it in a variable.
mtrx = [[1, 2, 2], [3, 4, 2], [5, 1, 5]]
# Calculate the number of rows of the given matrix by
# calculating the length of the nested list using the len() function
# and store it in a variable mtrxrows.
mtrxrows = len(mtrx)
# Calculate the number of columns of the given matrix by
# calculating the length of the first list in the nested list
# using the len() function and store it in a variable mtrxcols.
mtrxcols = len(mtrx)
# take a list and initialize it to empty using [] or list() function
mtrxlist = []
# Loop till the given number of rows using the For loop.
for n in range(mtrxrows):
# Inside the For loop, Iterate till the given number of columns using another
# Nested For loop(Inner For loop).
for m in range(mtrxcols):
# add the gvnmatrix[n][m] value to the list using the append() function
# where n is the iterator value of the parent For loop and m is the iterator
# value of the inner For loop.
mtrxlist.append(mtrx[n][m])
# Apply the Counter function to the matrix elements list which stores the matrix element
# as key and its frequency as value
mtrxfreq = Counter(mtrxlist)
# Print all the keys of the mtrxfreq(using keys() function)
# which are the uniques values in the given matrix
print('The unique matrix elements in the given matrix are :')
print(*mtrxfreq.keys())


Output:

The unique matrix elements in the given matrix are :
1 2 3 4 5

### Method #2: Using Counter() function (Hashing, User Input)

Approach:

• Import the Counter Function from collections using the import keyword.
• Give the number of rows of the matrix as user input using the int(input()) function and store it in a variable.
• Give the number of columns of the matrix as user input using the int(input()) function and store it in another variable.
• Take a list and initialize it with an empty value using [] or list() to say gvnmatrix.
• Loop till the given number of rows using the For loop
• Inside the For loop, Give all the row elements of the given Matrix as a list using the list(),map(),int(),split() functions and store it in a variable.
• Add the above row elements list to gvnmatrix using the append() function.
• Take a list and initialize it to empty using [] or list() function.
• Loop till the given number of rows using the For loop.
• Inside the For loop, Iterate till the given number of columns using another Nested For loop(Inner For loop).
• Add the gvnmatrix[n][m] value to the list using the append() function where n is the iterator value of the parent For loop and m is the iterator value of the inner For loop.
• Apply the Counter function to the matrix elements list which stores the matrix element as key and its frequency as value
• Print all the keys of the mtrxfreq(using keys() function) which are the uniques values in the given matrix
• The Exit of the Program.

Below is the implementation:

# import the Counter Function from collections using the import keyword
from collections import Counter
# Give the number of rows of the matrix as user input using the int(input()) function
# and store it in a variable.
mtrxrows = int(input('Enter some random number of rows of the matrix = '))
# Give the number of columns of the matrix as user input using the int(input()) function
# and store it in another variable.
mtrxcols = int(input('Enter some random number of columns of the matrix = '))
# Take a list and initialize it with an empty value using [] or list() to say gvnmatrix.
mtrx = []
# Loop till the given number of rows using the For loop
for n in range(mtrxrows):
# Inside the For loop, Give all the row elements of the given Matrix as a list using
# the list(),map(),int(),split() functions and store it in a variable.
l = list(map(int, input(
'Enter {'+str(mtrxcols)+'} elements of row {'+str(n+1)+'} separated by spaces = ').split()))
# Add the above row elements list to gvnmatrix using the append() function.

mtrx.append(l)

# take a list and initialize it to empty using [] or list() function
mtrxlist = []
# Loop till the given number of rows using the For loop.
for n in range(mtrxrows):
# Inside the For loop, Iterate till the given number of columns using another
# Nested For loop(Inner For loop).
for m in range(mtrxcols):
# add the gvnmatrix[n][m] value to the list using the append() function
# where n is the iterator value of the parent For loop and m is the iterator
# value of the inner For loop.
mtrxlist.append(mtrx[n][m])
# Apply the Counter function to the matrix elements list which stores the matrix element
# as key and its frequency as value
mtrxfreq = Counter(mtrxlist)
# Print all the keys of the mtrxfreq(using keys() function)
# which are the uniques values in the given matrix
print('The unique matrix elements in the given matrix are :')
print(*mtrxfreq.keys())

Output:

Enter some random number of rows of the matrix = 3
Enter some random number of columns of the matrix = 3
Enter {3} elements of row {1} separated by spaces = 3 4 4
Enter {3} elements of row {2} separated by spaces = 1 6 5
Enter {3} elements of row {3} separated by spaces = 88 5 3
The unique matrix elements in the given matrix are :
3 4 1 6 5 88


If you wanna write simple python programs as a part of your coding practice refer to numerous Simple Python Program Examples existing and learn the approach used.