Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何限制模糊连接只返回一个匹配

如何限制模糊连接只返回一个匹配
EN

Stack Overflow用户
提问于 2019-09-12 15:07:35
回答 1查看 536关注 0票数 4

我正在尝试用R语言创建一个程序,将城市名称或机场名称替换为三位数的机场代码。我希望进行模糊匹配,以获得更大的灵活性,因为我要替换的城市/机场名称的数据来自许多不同的来源。我的问题是,在模糊匹配左连接的情况下,我似乎找不到一种方法,只将最接近的匹配从右表(代码)带回左表(名称)。

例如: GA的奥古斯塔与GA的奥古斯塔和ME的奥古斯塔都进行了匹配,并复制了数据。我不想限制最大距离,因为我仍然希望允许灵活性,但我不能让我的数据被复制。我想找到一种方法来进行部分字符串匹配,但只返回最接近的结果。

我尝试过使用fuzzyjoin包,但从我所看到的情况来看,没有办法限制只有一个匹配或只有最佳匹配。我知道在pmatch中有一个禁止重复的调用,但我找不到一种方法来使pmatch作为连接工作。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
data <- stringdist_left_join(data, orig, ignore_case = TRUE)

这是我正在使用的代码,字符串是R中的fuzzyjoin包的函数。数据集"data“包含城市名称、航班数量和其他乘客信息。orig数据集包含一列城市/机场名称和机场代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SAMPLE INPUT
**data table:**
City Name       Passenger Name    Fare Paid
Augusta, GA         Jon            $100
Dallas, TX          Jane           $200
Spokane, WA         Chris          $300

**orig table:**
City Name      Code
Augusta, GA    JCL
Dallas, TX     DAL
Denver, CO     DEN
Seattle, WA    SEA
Spokane, WA    GEG
Austin, TX     AUS
Augusta, ME    PEA
Portland, ME   MEW
Portland, OR   PDX



Desired Result
City Name       Passenger Name    Fare Paid   Code
Augusta, GA         Jon            $100        JCL
EN

回答 1

Stack Overflow用户

发布于 2020-10-20 06:56:31

在没有reprex的情况下很难判断,但一般来说,您可以使用以下命令处理fuzzyjoin结果

%>% group_by(column_you_joined_by) %>% slice_min(dist)

得到一个“最好”的结果。

参考文献:

https://github.com/dgrtwo/fuzzyjoin/issues/18

How can I match fuzzy match strings from two datasets?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57909676

复制
相关文章
Excel公式应用的时候固定某些单元格不动
今天在做大物实验的数据分析的时候,出现了一个问题,根据gi的公式来算gi的时候,如下图所示:
灯珑LoGin
2022/10/31
1.1K0
Excel公式应用的时候固定某些单元格不动
Excel公式技巧90:剔除单元格区域中的空单元格
有时候,在一列数据中有许多空单元格,导致数据不连续,我们需要剔除这些空单元格,让数据区域连起来。
fanjy
2021/07/12
4.6K0
Excel公式技巧90:剔除单元格区域中的空单元格
Excel公式练习64: 获取单元格区域中移除空单元格后的值
导语:在前面的文章中有一些与本文类似的案例。要想熟练掌握一门技术,就是要不断地反复练习。
fanjy
2020/05/25
3.1K0
Excel公式练习64: 获取单元格区域中移除空单元格后的值
VBA技巧:当单元格区域中包含由公式返回的空单元格时,如何判断?
在VBA中,我们经常会遇到需要检查某个单元格区域是否为空的情形。我们可以使用下面程序中的代码来检查单元格区域是否为空。
fanjy
2022/06/04
2.3K0
Excel公式练习32: 将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格
本次的练习是:如下图1所示,单元格区域A1:D6中是一系列数据,其中包含空单元格,现在要将它们放置到一列中,并删除空单元格,如图中所示的单元格区域G1:G13,如何使用公式实现?
fanjy
2020/02/18
2.4K0
Excel公式练习33: 将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格(续)
本次的练习是:这个练习题与本系列上篇文章的练习题相同,如下图1所示,不同的是,上篇文章中将单元格区域A1:D6中的数据(其中包含空单元格)转换到单独的列(如图中所示的单元格区域G1:G13)中时,是以行的方式进行的,即先放置第1行中的数据、再放置第2行……依此类推。这里,需要以列的方式进行,即先放置第1列中的数据、再放置第2列中的数据……依此类推,最终结果如图中所示的单元格区域H1:H13,如何使用公式实现?
fanjy
2020/02/18
2.4K0
Excel公式技巧75:查清与公式相关的单元格
在使用Excel时,我们肯定会使用公式。这些公式要么会引用其他的单元格,要么会被其他单元格引用。下面我们先看看这两种情况,如下图1所示。
fanjy
2021/01/06
1.7K0
Excel公式技巧95:统计文本单元格的神秘公式
需要弄明白的是,空字符串与空单元格不同。空单元格中没有任何内容,空字符串是不显示任何结果的公式的结果。这通常是通过使用两个双引号来实现的,它们之间没有任何内容:
fanjy
2021/07/12
1.6K0
Excel公式技巧95:统计文本单元格的神秘公式
VBA: 禁止单元格移动,防止单元格公式引用失效
文章背景: 在工作生活中,存在文件共享的情况。在数据处理时,单元格公式中往往要引用原始数据源。多人操作时,每个人的操作习惯不同,如果数据源的单元格不小心被人为移动或删除,会导致单元格公式引用失效,产生#REF! 错误。如果进行的是跨表引用,这种错误往往还很难发现。
Exploring
2022/09/20
7870
为什么要将超声波感应用于无人机
无人机降落辅助是无人机所具有的一项功能,可以检测无人机底部与着陆区域的距离,判定着陆点是否安全,然后缓慢下降到着陆区域。尽管GPS监测、气压传感和其他传感技术有助于着陆过程,但在这个过程中,超声波传感是无人机的主要和最准确的判断依据。大多数无人机中还有悬停和地面跟踪模式,主要用于捕捉连续镜头和陆地导航,其中超声波传感器有助于将无人机保持在高于地面的恒定高度。
机器人网
2018/07/23
4670
为什么要将超声波感应用于无人机
VBA: 禁止单元格移动,防止单元格公式引用失效(2)
文章背景: 在Excel中,公式引用无效单元格时将显示 #REF! 错误。当公式所引用的单元格被删除或被粘贴覆盖时最常发生这种情况。
Exploring
2022/09/20
1.2K0
Excel技巧:使用上方单元格的值填充空单元格
有时候,工作表列中有许多空单元格,而不是在每行都重复相同的内容,这样可以使报表更容易阅读,然而也会导致一些问题,例如不方便排序或筛选数据。
fanjy
2022/04/13
3.4K0
Excel技巧:使用上方单元格的值填充空单元格
Excel公式技巧:颠倒单元格区域/数组
=SUMPRODUCT(A1:G1,N(OFFSET(A2:G2,0,7-COLUMN(A2:G2),1,1)))
fanjy
2023/02/14
9050
Excel公式技巧:颠倒单元格区域/数组
Excel 公式、图表以及单元格的操作
SUM 函数将值相加,可以将单个值、单元格引用或是区域相加,或者将三者的组合相加。例如: =SUM(A1:A3)将单元格 A1:A3 中的值加在一起,=SUM(A1:A3,B1:B3)将单元格 A1:A3 以及单元格 B1:B3 中的值加在一起。语法:SUM(number1,[number2],…),number1(必需):要相加的第一个数字。该数字可以是 4 之类的数字,A1 之类的单元格引用或 A1:A3 之类的单元格范围。number2(可选):要相加的第二个数字。可以按照这种方式最多指定 255 个数字。下面我们来看怎么通过 Python 使用 SUM 函数。代码如下:
芯动大师
2022/11/15
1.3K0
Excel 公式、图表以及单元格的操作
Excel小技巧88:保护公式单元格
Excel中的“保护工作表”功能使用起来有点奇怪,似乎有点烧脑。但是,你按照下面介绍的步骤,可以快速保护工作表中的公式单元格。
fanjy
2021/07/12
8290
Excel小技巧88:保护公式单元格
Excel技巧:锁定包含公式的单元格
有时候,我们想保护工作表中的公式,不让用户能够随便修改,但是又不想限制用户编辑除公式之外的数据。此时,不能够简单的使用“保护工作表”命令,稍微需要添加一点技巧来实现。
fanjy
2022/06/04
3.1K0
Excel技巧:锁定包含公式的单元格
Excel小技巧77:6个简单的方法,批量应用公式到整列
公式使电子表格“活”了起来。有时,我们会在一个单元格或者多个单元格中应用公式,但在很多情况下,我们需要将公式应用于整列(或者一列中的许多单元格)。为此,Excel提供了多种不同的方法,你只需使用鼠标单击几次或者使用快捷键,就可以完成这样的操作。
fanjy
2021/02/05
59K0
Excel公式技巧27: 在条件格式中使用公式来突出显示单元格
条件格式与公式相配合,往往能够发挥很大的威力,其中之一就是用来突出显示单元格。如下图1所示,在“新建格式规则”对话框中:
fanjy
2020/04/14
3.3K0
Excel公式技巧27: 在条件格式中使用公式来突出显示单元格
点击加载更多

相似问题

如何在非空字段中存储空值?

32

如何在excel中首先获得非空/空值

12

在Tapestry中呈现requestParameter

10

非空属性引用“我的控制器”中的空值或瞬态值。

14

如何在空向量中传递值?

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文