《Clojure数据分析秘笈》——2.4节识别并去除重复数据

简介:

本节书摘来自华章社区《Clojure数据分析秘笈》一书中的第2章,第2.4节识别并去除重复数据,作者(美)Eric Rochester,更多章节内容可以访问云栖社区“华章社区”公众号查看

2.4 识别并去除重复数据
清洗数据过程中的一个难题是如何处理重复值。如何找到它们?一旦找到了如何处理?尽管这个过程中的一些步骤是自动进行的,但整合它们通常需要手动完成,因为人们需要检查匹配到的潜在结果并确定它们是不是重复的和如何处理重复数据。当然,可以用启发式编程,但在特定时刻需要手动调用。
第一个需要回答的问题是数据的构成。如果数据有两个项,需要检查哪些域来判断是否存在重复?还有,相似程度多高的数据才可以算得上重复数据?
在本方法中,通过在命名域进行模糊匹配来检查一些数据,以判断是否存在重复。仅返回所有可能的重复对。
2.4.1 准备工作
首先,需要使用下列命令将模糊字符串匹配的库加到Leiningen project.clj文件中:


81ac54e6209d5f2aea50908c6a8d497adb5a92fd


53b80a8da6e8b0a7e3d130e84ffab0a524843c3a

首先,就相似度而言,距离至多为fuzzy-max-diff。将之设置成2表明允许替换,通常是两种变化类型(删除和插入)。

或者最大距离可以是最短输入字符串长度的一个比例。在本例中,使用10%作为两个字符串的距离的最大值。
如果满足这两个条件之一,就可以判断两个字符串是相同的。这将导致出现两种情形。无论字符串的长度是多少,如果只有两个字符变化,它将认为是相同的。这对于很短的字符串而言是有问题的。
另外,固定的最大距离也对长字符串无效。如果是200个字符或者更多,也就是说,你想允许更多的字符不同而不是20个字符。fuzzy-percent-diff提供处理这种问题的灵活性。

2.4.4 更多信息
如前所述,这将无法处理短字符串。例如,它将认为ace和are是相同的。可以将逻辑设计得更加复杂,如果字符串的长度超过某一特定值,加入使用fuzzy-max-diff的一个条款。
在本方法中使用clj-diff.core/edit-distance。它可以计算将一个字符串转换成另一个需要做多少次单个字符的插入和删除操作。也可以选择用clj-diff.core/levenshtein-distance,它也使用单个字符的替换操作。

相关文章
|
1月前
|
自然语言处理 小程序 数据挖掘
数据分析实战-Python实现博客评论数据的情感分析
数据分析实战-Python实现博客评论数据的情感分析
102 0
|
4月前
|
机器学习/深度学习 存储 SQL
15个超级棒的外文免费数据集,学习数据分析不愁没有数据用了!
15个超级棒的外文免费数据集,学习数据分析不愁没有数据用了!
|
2月前
|
数据采集 数据挖掘 API
主流电商平台数据采集API接口|【Python爬虫+数据分析】采集电商平台数据信息采集
随着电商平台的兴起,越来越多的人开始在网上购物。而对于电商平台来说,商品信息、价格、评论等数据是非常重要的。因此,抓取电商平台的商品信息、价格、评论等数据成为了一项非常有价值的工作。本文将介绍如何使用Python编写爬虫程序,抓取电商平台的商品信息、价格、评论等数据。 当然,如果是电商企业,跨境电商企业,ERP系统搭建,我们经常需要采集的平台多,数据量大,要求数据稳定供应,有并发需求,那就需要通过接入电商API数据采集接口,封装好的数据采集接口更方便稳定高效数据采集。
|
3月前
|
数据可视化 数据挖掘 Java
提升代码质量与效率的利器——SonarQube静态代码分析工具从数据到洞察:探索Python数据分析与科学计算库
在现代软件开发中,保证代码质量是至关重要的。本文将介绍SonarQube静态代码分析工具的概念及其实践应用。通过使用SonarQube,开发团队可以及时发现和修复代码中的问题,提高代码质量,从而加速开发过程并减少后期维护成本。 在当今信息爆炸的时代,数据分析和科学计算成为了决策和创新的核心。本文将介绍Python中强大的数据分析与科学计算库,包括NumPy、Pandas和Matplotlib,帮助读者快速掌握这些工具的基本用法和应用场景。无论是数据处理、可视化还是统计分析,Python提供了丰富的功能和灵活性,使得数据分析变得更加简便高效。
|
7天前
|
数据挖掘 定位技术
基于出租车GPS轨迹数据的研究:出租车行程的数据分析
基于出租车GPS轨迹数据的研究:出租车行程的数据分析
|
8天前
|
机器学习/深度学习 数据采集 数据挖掘
Python 的科学计算和数据分析: 解释什么是数据规整(Data Wrangling)?
【4月更文挑战第15天】数据规整是将原始数据转化为适合分析和建模的格式的关键步骤,涉及缺失值处理(删除、填充、插值)、异常值检测与处理、数据类型转换、重采样、数据合并、特征选择和特征变换等任务。这些预处理步骤确保数据质量和准确性,为后续的数据分析和机器学习模型构建奠定基础。
18 4
|
19天前
|
存储 机器学习/深度学习 数据采集
数据分析师如何处理数据以进行分析?
【4月更文挑战第4天】数据分析师如何处理数据以进行分析?
19 9
|
20天前
|
人工智能 监控 数据可视化
【Python】Python商业公司贸易业务数据分析可视化(数据+源码)【独一无二】
【Python】Python商业公司贸易业务数据分析可视化(数据+源码)【独一无二】
|
1月前
|
存储 数据采集 数据挖掘
python数据分析——数据分类汇总与统计
数据分类汇总与统计是指将大量的数据按照不同的分类方式进行整理和归纳,然后对这些数据进行统计分析,以便于更好地了解数据的特点和规律。
58 1
|
1月前
|
存储 SQL 数据挖掘
python数据分析——数据的选择和运算
在数据分析中,数据的选择和运算是非常重要的步骤。数据选择和运算是数据分析中的基础工作,正确和高效的选择和运算方法对于数据分析结果的准确性和速度至关重要。
43 0

热门文章

最新文章