问题标签 [fuzzyjoin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 使用间隔模糊连接连接两个具有最近开始时间的数据集
我正在尝试使用'fuzzyjoin:interval_inner_join'加入R中的两个大型数据集。我的目标是根据最近的开始和结束时间将这些加入表格。
参考这个链接我尝试使用interval_semi_join:
但收到此错误
index_match_fun(d1, d2) 中的错误:
interval_join 必须恰好加入两列(开始和结束)
r - 如何基于多列和条件进行模糊连接?
我正在尝试左连接两个数据框(df1,df2)。数据框共有两列:区域和坡度。区域是一个因子列,斜率是数字。
我想加入数据框,以便它们首先在区域上完全匹配,然后是坡度最接近的匹配。如果有两个等距的斜率值,只要一致地应用规则并且不会导致重复行,连接向上还是向下舍入都没有关系。
我更喜欢用fuzzy_join 或dplyr 而不是data.table 来做到这一点。
结果应该类似于:
其中“其他”的值首先由区域确定,然后是最近的坡度。
我试过了:
以及其他类型的模糊连接,但我认为它们可能无法正常工作,因为列的类型不同。我怀疑有一个fuzzy_left_join 解决方案,但我不明白如何创建一个匹配函数。
r - 根据经度和纬度的最短距离合并/连接两个数据帧
我有一个df1
有800
行,另一个df2
有9 million
行。两者都有纬度和经度,并且df2
我需要df1
根据最短距离添加更多列,因为 lat 和 lon 在两者中都不完全匹配dataframes
。我goe_join
从Fuzzyjoin
包中使用但得到错误。
摘要df1
:
摘要df2
:
这是我的代码:
这是我得到的错误:
我感谢您的帮助!
r - inner_join(),其中一个键的值范围(年份)
我有两个格式如下的数据集:
和
我想做一个inner_join
按专辑和年份,但有时“年份”字段会关闭一年:例如,中士。Peppers 在 df1 中被列为 1967 年,在 df2 中被列为 1966 年。
所以如果我运行:
我得到:
鉴于,我希望两张专辑都加入,只要像(df1$Year == df2$Year + 1)|(df1$Year == df2$Year - 1)
.
我不能简单地通过“专辑”加入,因为在我的真实数据集中,有一些同名的“专辑”以“年份”来区分。
以下数据集的代码:
r - 如何模糊匹配具有相同日期的名称的变量?
我想匹配两个数据集。这些名字有不同的文字,所以我会模糊匹配它们,但这些名字有多个不同月份的条目。如何设置匹配以匹配具有相同月份的条目?
例如
-> 匹配
r - 我想将列表描述与关键字匹配,以及描述与哪个关键字匹配
我有一个带有描述的文章数据和一个关键字列表。我想将特定关键字与描述相匹配,并形成与其匹配的关键字的列。
文章列表:
关键字列表:
这是我正在使用的代码,虽然它与字符串匹配,但我不知道它匹配的描述是哪个关键字。我想要一列给出每个描述匹配的关键字名称。如果我使用 unnest_token 创建二元组然后标记,它会占用大量内存。我可以对上面的代码使用模糊匹配吗?
r - 表间模糊匹配后去除重复条目
我试图通过模糊匹配在我的数据集的名称和位置中查找数据输入错误。我有一个来自原始数据的唯一键 siterow_id,并创建了一个新键 pi_key,我已经在其中确定了一些硬匹配项。(没有模糊匹配)。运行模糊匹配后,我得到重复值。某些 siterow_id 的连接左侧和右侧的匹配项。我可以手动查看数据并查看发生这种情况的位置以及删除行的硬代码。当我转到具有更多匹配项的更大数据集时,我想要一种更算法的方法。
我尝试这样做,但它删除了左侧和右侧的匹配项。如果可能的话,我会喜欢一个 tidyverse 的方式来做到这一点,而不是一个循环。
表格输出包括在下面。您可以在第 8 行和第 9 行看到重复项。
我找到了另一种方法
仍然对建议持开放态度。
r - 在一个数据帧中按时间间隔在另一个数据帧中创建中断:模糊连接
我在 df2 中记录了 CO2,并在 d 中列出了实验开始和结束时间:
data.framedf2
包含随时间推移的连续 CO2 测量值。
我有一个data.frame
df1
名为: 的连续时间变量Dev.Date.Time
,一个名为的列ExperimentID
并记录了它的类型ExperimentType
。请注意,有一段时间没有进行任何实验,但不需要将其删除。
然后,我创建了另一个 data.frame d
,其中包含每个实验的开始和结束时间。
我想根据我在 d 中找到的开始和停止时间在 df2 中创建一个名为 ExperimentID 的列和另一个名为 ExperimentType 的列
我正在尝试以下使休息的方法,但我不知道如何使标签匹配。任何想法都非常感谢。
最初我考虑使用cut
. 虽然它取得了我想要的突破,但我并没有更接近用 ExperimentID 标记它们。
编辑:
根据评论中的建议,我正在尝试模糊连接,因为实际上时间戳并不完全匹配。所以我需要按间隔合并。
要求(模糊连接)
在所有 df3$ExperimentID 中产生 NA。有什么想法吗?
r - R根据来自另一个数据集的间隔填充新列(查找)
假设我有这个数据集:
我有第二个数据集:
我想使用第二个数据集中的间隔来填充第一个数据集中的新变量,并按组自动填充出现两次 abd
和NAs
其他任何地方的值。
期望的输出:
理想情况下想要dplyr
/tidyr
解决方案,但对任何方法都持开放态度。
类似,但这些填充所有值: R:填充时间序列值,但仅在过去 12 个月内