合并具有多个匹配项的数据框时仅选择第一行

2023-12-12

我有两个数据框,“数据”和“分数”,并想将它们合并到“id”列上:

data = data.frame(id = c(1,2,3,4,5),
                  state = c("KS","MN","AL","FL","CA"))
scores = data.frame(id = c(1,1,1,2,2,3,3,3),
                    score = c(66,75,78,86,85,76,75,90))
merge(data, scores, by = "id")                  
semi_join(data, scores, by = "id")                  

在“scores”数据中,有多个观察值的“id”,其中每个匹配在连接后获取一行。看?merge:

如果有多个匹配项,则所有可能的匹配项各贡献一行。

但是,我只想保留与first匹配来自scores table.

半连接本来就很好,但我无法从右表中选择分数。

有什么建议么?


Using data.table随着mult = "first" and nomatch = 0L:

require(data.table)
setDT(scores); setDT(data) # convert to data.tables by reference

scores[data, mult = "first", on = "id", nomatch=0L]
#    id score state
# 1:  1    66    KS
# 2:  2    86    MN
# 3:  3    76    AL

对于每一行data's id列,匹配的行scores' id找到列,并且仅保留第一个列(因为mult = "first")。如果没有匹配项,它们就会被删除(因为nomatch = 0L).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

合并具有多个匹配项的数据框时仅选择第一行 的相关文章

  • 将循环转换为并行计算的函数

    我正在使用 R 编程语言 我遇到这个问题 我试图找出两个 shapefile 之间的成对交集 即第一个 shapefile 中的每个多边形与第二个 shapefile 中的所有多边形相交的百分比 我想我找到了解决这个问题的基本方法 Load
  • 使用 R Shiny 从 XLConnect 下载 Excel 文件

    有没有人尝试过使用 R Shiny 中的下载处理程序通过 XLConnect 下载新创建的 Excel 文件 在 ui R 中有一行不起眼的行 downloadButton downloadData Download 在 server R
  • R 根据事件更新值

    我最近发布了这个问题 该问题已经与我在笔记本电脑上本地使用的 Mysql 数据库相关 由于我在 Mysql 中没有找到问题的解决方案 其他人似乎也没有找到解决方案 所以我想再次发布它 但现在与 R 相关 我使用带有 RMysql 包的数据库
  • 如何在R中计算文本中的句子数?

    我使用 R 将文本读入readChar 功能 我的目的是测试文本句子中字母 a 出现次数与字母 b 出现次数一样多的假设 我最近发现了 stringr 包 它帮助我对文本做很多有用的事情 例如计算字符数以及整个文本中每个字母出现的总数 现在
  • 计算例如具有多列 data.frames 的列表中的平均值

    我有几个 data frames 的列表 每个 data frame 有几列 通过使用mean mylist first dataframe a我可以得到这个 data frame 中 a 的平均值 但是我不知道如何计算列表中存储的所有 d
  • 如何在 ggplot 中保持配色方案,同时删除每个图中未使用的级别?

    我想比较一个图中的数据的一些子组和另一图中的一些其他子组 如果我绘制一个图 其中绘制了所有子组 那么这个数字将是巨大的 并且每个单独的比较都会变得困难 我认为如果给定的子组在所有图中都具有相同的颜色 这对读者来说会更有意义 这是我尝试过的两
  • numpy.histogram 的 hist 维度,密度 = True

    假设我有这个数组 A array 0 0019879 0 00172861 0 00527226 0 00639585 0 00242005 0 00717373 0 00371651 0 00164218 0 00034572 0 008
  • 如何从 R 运行带有特定模块的 perl 脚本?

    我可以从终端运行 perl 脚本 myperlscript pl 没有任何问题 但是 如果我尝试从 RStudio 中运行相同的 perl 脚本 则会出现以下错误 command lt myperlscript pl outputfile
  • 计算每个唯一值出现的次数

    假设我有 v rep c 1 2 2 2 25 现在 我想计算每个唯一值出现的次数 unique v 返回唯一值是什么 但不返回它们的数量 gt unique v 1 1 2 我想要一些能给我的东西 length v v 1 1 25 le
  • 在shiny中过滤传单地图数据

    我在用传单地图设置这个闪亮的东西时遇到了麻烦 我的原帖 https stackoverflow com questions 50111566 applying leaflet map bounds to filter data within
  • 使用 purrr 迭代替换数据帧列中的字符串

    我想用purrr使用以下命令在数据框列上迭代运行多个字符串替换gsub 功能 这是示例数据框 df lt data frame Year 2019 Text c rep a aa 5 rep a bb 3 rep a cc 2 gt df
  • 如何计算R中移动窗口内的平均斜率

    我的数据集包含2个变量y 和 t 05s y 每 05 秒测量一次 我正在尝试计算移动中的平均坡度20秒窗口 即计算第一个 20 秒斜率值后 窗口向前移动一个时间单位 05 秒 并计算下一个 20 秒窗口 在以下位置生成连续 20 秒斜率值
  • 时间戳半小时窗口内字段的平均值

    我的数据框有列名Timestamp es看起来像 Timestamp es 2015 04 01 09 07 42 31 2015 04 01 09 08 01 29 5 2015 04 01 09 15 03 18 5 2015 04 0
  • 将绘图调用拆分为多个块

    我正在编写一个图的解释 其中我基本上将在第一个块中创建图 然后描述该输出 并在第二个块中添加一个轴 然而 似乎每个块都会强制一个新的绘图环境 因此当我们尝试使用以下命令运行块时会出现错误axis独自的 观察 output html docu
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr
  • kernlab 中 SVM 训练之外的核矩阵计算

    我正在开发一种新算法 该算法可以生成修改后的核矩阵以用于 SVM 训练 但遇到了一个奇怪的问题 出于测试目的 我比较了使用 kernelMatrix 接口和普通内核接口学习的 SVM 模型 例如 Model with kernelMatri
  • 在 R 格子包中微调点图

    我正在尝试为不同的数据集和不同的算法绘制一堆 ROC 区域 我有三个变量 方案 指定所使用的算法 数据集 是正在测试算法的数据集 以及 Area under ROC 我正在 R 中使用lattice库 命令如下 点图 方案 Area und
  • Purrr::map_df() 删除 NULL 行

    使用时purrr map df 我偶尔会传递一个数据框列表 其中一些项目是NULL 当我做 map df 返回行数少于原始列表的数据框 我想发生的事情是这样的map df calls dplyr bind rows 它忽略了NULL价值观
  • R 中的列乘以子字符串

    假设我有一个数据框 其中包含多个组件及其在多个列中列出的属性 并且我想对这些列运行多个函数 我的方法是尝试将其基于每个列标题中的子字符串 但我无法弄清楚如何做到这一点 下面是数据框的示例 Basket F Type 1 F Qty 1 F
  • 文本挖掘 pdf 文件/词频问题

    我正在尝试挖掘一篇具有丰富 pdf 编码和图表的文章的 pdf 我注意到 当我挖掘一些 pdf 文档时 我得到的高频词是 phi taeoe toe sigma gamma 等 它与某些 pdf 文档配合良好 但与其他文档配合使用时却得到这

随机推荐

  • 是否可以用自定义视图替换密码(EditText)中的点?

    我想替换 EditText 中的点 android inputType textPassword 与自定义 xml 或图像 我可以使用任何其他符号替换点PasswordTransformationMethod方法 但这不是本例中所需要的 那
  • 在 QT 的 textedit 中为特定行(由光标指示)着色,但每次按下按钮时光标的位置都会随着功能而变化

    我是这样编辑的 但是 即使单词已添加到正确的位置并着色 所有文本也不会打印在 textEdit 中 ui gt textEdit gt setText display text QTextcursor cursor ui gt textEd
  • Gensim:有机会获得 Word2Vec 格式的词频吗?

    我正在使用 fasttext 预训练模型进行研究 我需要词频进行进一步分析 fasttext网站上提供的 vec或 bin文件是否包含词频信息 如果是 我该如何得到 我使用 load word2vec format 来加载使用 model
  • 生成 10 的倍数的随机数

    我希望在两个范围之间创建一个 10 倍数的随机数 例如 如果我向函数提供参数0 100它将返回以下数字之一 0 10 20 30 40 50 60 70 80 90 100 但没有什么像63 or 55 是的 我知道这违背了真正的 随机性
  • 如何在 Android 上显示警报对话框?

    我想显示一个对话框 弹出窗口 并向用户显示一条消息 显示 您确定要删除此条目吗 带有一个 删除 按钮 什么时候Delete被触及 它应该删除该条目 否则什么也没有 我已经为这些按钮编写了一个单击侦听器 但是如何调用对话框或弹出窗口及其功能
  • 在 JS/jQuery 中触发 keypress/keydown/keyup 事件?

    在 JS 和 或 jQuery 中模拟用户在文本输入框中输入文本的最佳方法是什么 I don t想要实际在输入框中输入文本 我只想触发所有事件handlers通常由用户在输入框中输入信息来触发 这意味着焦点 按键 按键 按键和模糊 我认为
  • AsyncTask 内的 Android NetworkOnMainThreadException

    当我尝试使用 google calendar api 时 我在 ICS 上遇到问题 为了获取事件列表 我有一个 AsyncTask 并在 doInBackground 内部进行服务调用 但仍然收到 NetworkOnMainThreadEx
  • SublimeREPL 和 IPython

    当我尝试将 IPython 与 SublimeREPL 一起使用时 我失败了 我的设置是 Windows 8 1 Sublime Text 3 C Python34 C Python27 C Anaconda3 Scripts gt Her
  • SwiftUI 和 AppKit:使用关闭对话框询问是否允许应用程序退出

    我正在使用 Big Sur 和 SwiftUI 以及 SwiftUI 生命周期 我想实现一个警报 询问用户是否可以退出应用程序 SwiftUI 怎么可能做到这一点 它应该看起来像这样 可以使用此代码 此代码打开Alert仅在关键窗口中 im
  • SQL为每个年龄返回100个随机行

    对于每个 i Age 0 100 我想使用所选数据为每个年龄返回 100 个随机行 我不确定是否应该使用 while 循环来完成此操作 或者是否应该使用带有限制的 group by 来完成此操作 我看过很多不同的例子 但我仍然很困惑 SEL
  • 如何在c#中将数组的内容打印到标签[重复]

    这个问题在这里已经有答案了 我想从每个数字之间用逗号分隔的标签显示数组的内容 num1 num6 是从文本框转换而来的整数变量 到目前为止我已经做到了这一点 int number new int 6 num1 num2 num3 num4
  • 在配置中找不到指定的命名连接,不适合与 EntityClient 提供程序一起使用,或者无效

    我有一个实体框架对象 当我将其添加到我的项目中时 connectionstring被添加到app config in the connectionstring部分 但是当我想创建新的entitycontext并使用这个connections
  • 调整 AudioUnit 缓冲区的长度

    我的问题涉及音频单元 为了设计适用于 iPhone 的变声应用程序 使用 Objective C xCode 我使用此网站上的 RemoteIO audioUnit 示例 http atastypixel com blog using re
  • Odoo 10:从向导中调用确认表(是/否)

    我想在我的采购订单中添加一个 取消 按钮 此按钮会将我的记录状态更改为 已取消 当用户单击此按钮时 脚本会验证所有购买查询和提供商订单 如果有任何订单尚未完成或取消 我想添加一个弹出窗口来警告用户有关它们的信息 用户可以取消操作或追查 并取
  • 将 List.Contains 转换为表达式树

    相关 创建具有 3 个条件的 Lambda 表达式 将包含转换为表达式树 在我之前的问题的下面 我遇到了我想写的这个查询Expression Tree版本 List
  • twitter-bootstrap 按钮 javascript 不起作用

    我有一个控制组 其中一个按钮组作为复选框 如下所示 div class control group div
  • 在 Javascript 中将字符串添加到数字

    我有功能addNumber如果我单击具有特定值的按钮 该值将连接到变量 b 但如果 a 的值不是数字 则该函数不起作用 我缺少什么 我认为该函数使用参数 a 就像它是一个字符串一样 否则 数字就会被累加起来 因此 如果b 0 a x 的结果
  • 已安装的软件包在 Google Cloud Shell 中消失

    我尝试在 Google Cloud Platform Console 中安装一堆 python 包 但磁盘空间不足 安装失败 有趣的是 在某些时候 网络连接丢失了 我应该重新连接它 然后我检查了一些在尝试安装其他 python 软件包之前已
  • 从 Python 运行 bash 脚本

    我需要从 Python 运行 bash 脚本 我让它按如下方式工作 import os os system xterm hold e scipt sh 这不完全是我正在做的事情 但几乎是我的想法 工作正常 打开一个新的终端窗口 我将其保留用
  • 合并具有多个匹配项的数据框时仅选择第一行

    我有两个数据框 数据 和 分数 并想将它们合并到 id 列上 data data frame id c 1 2 3 4 5 state c KS MN AL FL CA scores data frame id c 1 1 1 2 2 3