Find and remove duplicates
Find and remove duplicates in Excel[edit]
Find duplicates in Excel[edit]
Finding Duplicate Rows That Differ in One Column[edit]
Example function
=IF(AND(LEN(A2)>0, COUNTIF(A:A, A2)>=2), 1, 0)
This function works by checking each cell in a specified column (in this case, column A). Here's a breakdown of how it operates:
- LEN(A2)>0: This part of the formula checks if the cell is not empty. It prevents empty cells from being flagged as duplicates.
- COUNTIF(A:A, A2)>=2: This checks how many times the value in cell A2 appears in column A. If it appears two or more times, it meets the criteria for being considered a duplicate.
- IF(AND(...), 1, 0): The IF function combined with AND evaluates the conditions mentioned above. If both conditions are true (meaning the cell is not empty and the value appears two or more times), the function returns 1, indicating a duplicate. If not, it returns 0.
References
- How to count duplicate values in a column in Excel? Using COUNTIF(range, criteria) [Last visited: 2015-08-25] or using Pivot Tables(樞紐分析表) to find the occurrence of value >= 2
Finding duplicate rows that differ in multiple columns[edit]
- two or multiple columns data: (approach 1) How to compare data in two columns to find duplicates in Excel [Last visited: 2015-06-16] It may costs too much time (larger than one hour) if the number of records exceeds 1,000,000 (approach 2) Using CONCAT function to concatenate two or multiple columns data. And then use COUNTIF(range, criteria).
- microsoft excel - How to count number of repeat occurrences - Super User long number issue: microsoft excel - Countif incorrectly matches long number - Super User
Remove duplicates in Excel[edit]
- EXCEL: Data Tools -> Remove Duplicates: Filter for unique values or remove duplicate values [Last visited: 2015-10-20]
Find and remove duplicates in Cygwin/BASH[edit]
Finding duplicate values in Cygwin/BASH[edit]
- uniq command on Cygwin of Win or Linux : uniq -d <file.txt> > <duplicated_items.txt>[1]
Remove duplicate values in Cygwin/BASH[edit]
GNU Coreutils: sort invocation OS: Linux , cygwin of Win .
Data preparation:
case 1: To remove duplicate lines of entire paragraph
- sort -us -o <output_unique.file> <input.file> in a large text file (GB)[2]
- cat <input.file> | grep <pattern> | sort | uniq Processes text line by line and prints the unique lines which match a specified pattern. Equal to these steps: (1) cat <input.file> | grep <pattern> > <tmp.file> (2) sort <tmp.file> | uniq
Case 2: Ignore first n line(s) & remove duplicate lines[3][4][5]
- (1) ignore first one line: (head -n 1 <file> && tail -n +2 <file> | sort -us) > newfile
- (2) ignore first two lines: (head -n 2 <file> && tail -n +3 <file> | sort -us) > newfile
Find and remove duplicates in MySQL[edit]
Find duplicates in MySQL[edit]
Finding duplicate value that differ in one column[edit]
Finding duplicate value that differ in one column[6]
-- Generate test data. CREATE TABLE `table_name` ( `id` int(11) NOT NULL, `content` varchar(5) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `table_name` (`id`, `content`) VALUES (1, 'apple'), (2, 'lemon'), (3, 'apple'); ALTER TABLE `table_name` ADD PRIMARY KEY (`id`); -- Find duplicated data SELECT `content`, COUNT(*) count FROM `table_name` GROUP BY `content` HAVING count > 1; SELECT tmp.* FROM ( SELECT `content`, count(*) count FROM `table_name` GROUP BY `content` ) tmp WHERE tmp.count >1;
Another approach: Add content_hash column which its value is MD5(content_column)[7]
-- To find the duplicated records with same content SELECT count(*) as count, content_hash FROM `YOUR_TABLE_NAME` GROUP BY content_hash HAVING count >= 2
Finding duplicate rows that differ in multiple columns[edit]
Finding duplicate rows that differ in multiple columns: Using CONCAT for multiple columns ex: column_1, column_2
SELECT count(*) count, CONCAT( `column_1`, `column_2` ) 'key' FROM `table_name` GROUP BY CONCAT( `column_1`, `column_2` ) HAVING count > 1;
or
SELECT tmp.key FROM ( SELECT count(*) count, CONCAT( `column_1`, `column_2` ) 'key' FROM `table_name` GROUP BY CONCAT( `column_1`, `column_2` ) ) tmp WHERE tmp.count >=2
Select deduplicated/duplicated records[edit]
- MySQL DISTINCT - Eliminate Duplicate Rows in a Result Set. Using GROUP_CONCAT to handle the multiple columns[8]
- SQL UNIQUE Constraint "Note that you can have many UNIQUE constraints per table, but only one PRIMARY KEY constraint per table." Quoted from w3schools webpage.
- "UNION removes duplicates, whereas UNION ALL does not." source: sql - What is the difference between UNION and UNION ALL? - Stack Overflow
For counting purpose: find the count of repeated id (type: int) between table_a and table_b
SELECT count(DISTINCT(id)) FROM table_a WHERE id IN ( SELECT DISTINCT(id) FROM table_b )
Counting number of duplicate occurrence MySQL: find the number of duplicate occurrence between list_a & list_b which using the same primary key: column name id
- SELECT count(DISTINCT(`id`)) FROM `list_a` WHERE `id` IN (SELECT DISTINCT(`id`) FROM `list_b`) ;
Remove duplicates in MySQL[edit]
Find and remove duplicates in Google Spreadsheet[edit]
- Remove duplicates in Google Sheets 30 days free [Last visited: 2019-02-26]
- Power Tools for Google Spreadsheet [Last visited: 2019-02-26]
- Menu: Data -> Remove duplicates
- Google spreadsheet add-on: Remove Duplicates for Google Sheets help
- Remove Duplicates from Comma-Delimited Strings in Google Sheets - Sheetaki
Initial contents of cell A2 which its separator is comma or whitespace. The second parameter of SPLIT function is ", " (a comma followed by a space):
apple, banana, apple
To remove duplicates from Cell A2, use the following formula: ((learn more about the UNIQUE function from Google Help[9] or Microsoft support[10])
If cell A2's content is separated by a comma or whitespace: = JOIN(", ",UNIQUE(TRANSPOSE(SPLIT(A2,", ")))) If cell A2's content is separated solely by a comma: = JOIN(", ", UNIQUE(TRANSPOSE(ARRAYFORMULA(TRIM(SPLIT(A2, ","))))))
Alternatively, activate the `by_column=true` parameter in the second argument of the UNIQUE function:
= JOIN(", ",UNIQUE(SPLIT(A2,", "), 1)))
Cell A2's contents after removing duplicates:
apple, banana
Find and remove duplicates in PHP[edit]
Find duplicates in PHP[edit]
- PHP PHP: array_intersect function
Remove duplicates in PHP[edit]
- PHP: PHP: array_unique function
Find and remove duplicates in JavaScript[edit]
Remove duplicates in JavaScript[edit]
Other issues[edit]
- symbol e.g. data-mining or data_mining
Related articles[edit]
References[edit]
- ↑ shell - How to print only the duplicate values from a text file? - Unix & Linux Stack Exchange
- ↑ linux - How to remove duplicate lines in a large multi-GB textfile? - Unix & Linux Stack Exchange
- ↑ sorting - Is there a way to ignore header lines in a UNIX sort? - Stack Overflow
- ↑ 命令執行的判斷依據: ; , &&, ||
- ↑ Linux tail command help and examples
- ↑ Finding duplicate values in MySQL - Stack Overflow
- ↑ MySQL 如何尋找重複的文章 (文字類型資料)
- ↑ sql - MySQL SELECT DISTINCT multiple columns - Stack Overflow
- ↑ UNIQUE 函式 - Google 文件編輯器說明
- ↑ UNIQUE 函數 - Microsoft 支援服務