Duplicate rows quietly distort everything downstream: they inflate counts, over-weight repeated records in a model, and break aggregates. The chart above flags the repeats — but before deleting, you need to know what kind of duplicate you're looking at.
Note
Exact vs Near-Duplicates
- Exact duplicates: every field matches — usually a safe removal
- Key duplicates: the same identifier repeats, other fields may differ
- Near-duplicates: 'Jon Smith' vs 'John Smith' — same entity, messy text
Exact duplicates are easy. Near-duplicates need fuzzy matching or normalization first, because the text differs even though the entity is the same.
Which Copy to Keep
Once you find duplicates, deleting is only half the job — you have to decide which row survives. Keep the most recent, the most complete, or the one from the most trusted source, depending on your data.
Watch out
The Over-Deletion Risk
Deduplicating on too few columns can merge distinct records that only look alike. Two real orders on the same day for the same amount aren't necessarily one — check your key covers what truly makes a row unique.
Cleaning Duplicates in the SKARI Data Editor
The Data Editor's cleaning tools help you inspect and remove repeats: profile a column for repeated values, review the rows before acting, and apply the removal as a tracked step you can undo.
- Spot repeated values through column profiling
- Review flagged rows before anything is deleted
- Every cleaning step recorded in the pipeline, and reversible
Takeaway
Frequently Asked Questions
Should I always remove duplicates?
No — only when a row genuinely shouldn't repeat. Some repeats (repeat purchases, repeated measurements) are real data.
How do I catch near-duplicates?
Normalize the text first (case, whitespace, formatting), then match — fuzzy matching catches the rest.
Which row should win?
Usually the most recent or most complete — but decide the rule deliberately, based on your source.
Conclusion
Duplicate detection protects every count and model downstream — but only if you distinguish real duplicates from legitimate repeats, choose the surviving row on purpose, and keep the option to undo. Clean deliberately, not by reflex.
Takeaway
Handling Missing Data
The other half of data cleaning
Joining Datasets
Where duplicates often creep in
Column Profiling
Spotting repeats at a glance