# Python Counter| Find duplicate rows in a binary matrix

Given a binary matrix whose elements are only 0 and 1, we need to print the rows which are duplicate of rows which are already present in the matrix.

Examples:

Input : [[1, 1, 0, 1, 0, 1], [0, 0, 1, 0, 0, 1], [1, 0, 1, 1, 0, 0], [1, 1, 0, 1, 0, 1], [0, 0, 1, 0, 0, 1], [0, 0, 1, 0, 0, 1]] Output : (1, 1, 0, 1, 0, 1) (0, 0, 1, 0, 0, 1)

We have existing solution for this problem please refer Find duplicate rows in a binary matrix link. We can solve this problem very quickly in Python using Counter() method. Approach is very simple,

- Create a dictionary using counter method which will have rows as key and it’s frequency as value.
- Now traverse dictionary completely and print all rows which have frequency greater than 1.

`# Function to find duplicate rows in a binary matrix ` `from` `collections ` `import` `Counter ` ` ` `def` `duplicate(` `input` `): ` ` ` ` ` `# since lists are unhasable for counter method ` ` ` `# because lists are mutable so first we will cast ` ` ` `# each row (list) into tuple ` ` ` `input` `=` `map` `(` `tuple` `,` `input` `) ` ` ` ` ` `# now create dictionary ` ` ` `freqDict ` `=` `Counter(` `input` `) ` ` ` ` ` `# print all rows having frequency greater than 1 ` ` ` `for` `(row,freq) ` `in` `freqDict.items(): ` ` ` `if` `freq>` `1` `: ` ` ` `print` `(row) ` ` ` `# Driver program ` `if` `__name__ ` `=` `=` `"__main__"` `: ` ` ` `input` `=` `[[` `1` `, ` `1` `, ` `0` `, ` `1` `, ` `0` `, ` `1` `], ` ` ` `[` `0` `, ` `0` `, ` `1` `, ` `0` `, ` `0` `, ` `1` `], ` ` ` `[` `1` `, ` `0` `, ` `1` `, ` `1` `, ` `0` `, ` `0` `], ` ` ` `[` `1` `, ` `1` `, ` `0` `, ` `1` `, ` `0` `, ` `1` `], ` ` ` `[` `0` `, ` `0` `, ` `1` `, ` `0` `, ` `0` `, ` `1` `], ` ` ` `[` `0` `, ` `0` `, ` `1` `, ` `0` `, ` `0` `, ` `1` `]] ` ` ` `duplicate(` `input` `) ` |

*chevron_right*

*filter_none*

Output:

(1, 1, 0, 1, 0, 1) (0, 0, 1, 0, 0, 1)

## Recommended Posts:

- Find duplicate rows in a binary matrix
- Python Counter| Find all duplicate characters in string
- Find pair of rows in a binary matrix that has maximum bit difference
- Check if the rows of a binary matrix can be made unique by removing a single column
- Find all permuted rows of a given row in a matrix
- Find distinct elements common to all rows of a matrix
- Find a common element in all rows of a given row-wise sorted matrix
- Python | Print unique rows in a given boolean matrix using Set with tuples
- Dictionary and counter in Python to find winner of election
- Python Counter to find the size of largest subset of anagram words
- Using Counter() in Python to find minimum character removal to make two strings anagram
- Python | Find keys with duplicate values in dictionary
- Print a given matrix in counter-clock wise spiral form
- Remove first X rows and columns from a matrix
- Common elements in all rows of a given matrix

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.