按降序按组连接值[重复]

2024-03-07

我想要一个数据。我的数据 A 看起来像

author_id paper_id prob
   731    24943    1
   731    24943    1
   731   688974    1
   731   964345    .8
   731  1201905    .9
   731  1267992    1
   736    249      .2
   736   6889      1
   736   94345    .7
   736  1201905    .9
   736  126992    .8

我想要的输出是:

author_id    paper_id
  731        24943,24943,688974,1201905,964345
  736        6889,1201945,126992,94345,249

即paper_id按照概率降序排列。

如果我结合使用 sql 和 R,我认为解决方案是

statement<-"select * from A 
            GROUP BY author_id
            ORDER BY prob"

一旦为 paper_id 设置了顺序,然后在 R 中使用粘贴。

但我需要 R 中的完整解决方案。这怎么办?

Thanks


If temp是你的数据集然后做

library(data.table)
setDT(temp)[order(-prob), list(paper_id = paste0(paper_id, collapse=", ")), by = author_id]
##    author_id                                       paper_id
## 1:       731 24943, 24943, 688974, 1267992, 1201905, 964345
## 2:       736              6889, 1201905, 126992, 94345, 249

编辑:2014 年 8 月 11 日

Since data.tablev >= 1.9.4,您可以使用非常高效的setorder代替order

str(temp)
setorder(setDT(temp), -prob)[, list(paper_id = paste0(paper_id, collapse=", ")), by = author_id]
##    author_id                                       paper_id
## 1:       731 24943, 24943, 688974, 1267992, 1201905, 964345
## 2:       736              6889, 1201905, 126992, 94345, 249

顺便说一句,这整件事也可以使用基础 R 轻松完成(尽管不推荐用于大数据集)

aggregate(paper_id ~ author_id, temp[order(-temp$prob), ], paste, collapse = ", ")
#   author_id                                       paper_id
# 1       731 24943, 24943, 688974, 1267992, 1201905, 964345
# 2       736              6889, 1201905, 126992, 94345, 249
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按降序按组连接值[重复] 的相关文章

随机推荐

  • 类似 Chrome 的菜单显示

    我正在尝试查找一些有关如何创建看起来像 Android chrome 菜单顶部的菜单的信息 我尝试过为 Android 4 0 实现图标 但没有成功 尝试过谷歌搜索 但我发现的唯一答案是当 API gt 11 时无法实现图标 那么 Chro
  • JavaScript 中相当于 PHP 中的 var_dump 或 print_r 的是什么? [复制]

    这个问题在这里已经有答案了 我想查看 JavaScript 中对象的结构 用于调试 PHP中有类似var dump的东西吗 大多数现代浏览器的开发工具中都有一个控制台 对于此类调试很有用 console log myvar 然后 您将在控制
  • Python BaseHTTPServer.HTTPServer - 启动和停止事件的回调

    参考 http docs python org 2 library basehttpserver html http docs python org 2 library basehttpserver html 我有以下使用的代码片段Pyth
  • JPA GenerationType.AUTO 不考虑具有自动增量的列

    我有一个表 其中有一个简单的 int id 列 在 SQL Server 中具有身份自动增量 实体的 Id 注释为 Id and GeneratedValue Id GeneratedValue strategy GenerationTyp
  • 如何在 django 中安全地存储第三方服务的密码?

    我正在 Django 上运行 Web 服务 用户注册到我的系统并向我提供第三方网络服务的登录详细信息 用户名和密码 我的目的是以最好 最安全的方式存储这些详细信息 不幸的是 我的服务需要这些数据来用于查询第 3 方服务的某些离线脚本 因此我
  • event.stopPropagation() 不起作用 - 捕获仍然传递函数

    首先 我是一个菜鸟 抱歉 如果这个问题足够基本 其次 我尝试搜索 正如我所看到的 我按照其他帖子中的说明应用了解决方案 话虽这么说 我有三组 DIV 每组由 2 个 Div 组成 一个在另一个里面 在 OUTER div 上有一个函数 表示
  • 如何确定是否为 TFS 构建定义执行了 MSBUILD 参数

    我正在使用 Team Foundation Service 2012 带有内部托管的构建控制器 以便我可以将应用程序部署到我们的 Web 服务器 我设置了构建定义 并使用我的调试配置 并提供了以下 MSBUILD 参数 p DeployOn
  • 使用 jQuery 显示/隐藏表格列

    我有一个有五列的表格 column1 column2 column3 column4 column5 当选中第一个复选框时 我有一些复选框 每个复选框对应一列 然后我需要显示第一列 如果未选中我需要隐藏第一列 像那样 我需要对所有列进行操作
  • 我可以将 git 上的分叉项目更新为原始/主副本吗?

    几周前 我在 GitHub 上分叉了一个公共项目 今天 我想尝试一些东西 但我想确保我使用的副本是最新的 我可以先更新我的前叉吗 如果在我开始更改后对叉子进行更改 会发生什么情况 我可以再次更新我的分叉 同时将我的更改保留在那里 即合并 如
  • 如何让 grunt 服务任务与 watch 一起工作?

    我最近安装并启动并运行了它 但我似乎无法让它与我的手表任务同时运行 在我的 grunt 文件中 如果在监视之前注册服务任务 服务器会旋转 但监视任务不会 反之亦然 这是服务包 我正在使用并附加了 Grunt 文件 https www npm
  • 如何在 Dart / Flutter 中使用另一个文件的功能?

    我有一个 Flutter 应用程序 正在使用 flutter web view 包 我在几个不同的文件上使用它 并且希望创建自己的文件 并在我的应用程序中的任何位置简单地引用 launchwebview 函数 因为需要几行代码才能使其工作
  • 负载下 .Net Core 容器的 SQL Server DbCommand 超时

    我正在 Open Shift Enterprise V3 上运行一个指向 SQL Server 数据库的 Net Core 容器 我有一个 Net Core REST API 带有 put 方法 可以在数据库中添加或更新记录 我添加 更新的
  • MATLAB - 从分类器生成混淆矩阵

    我有一些测试数据和标签 testZ 0 25 0 29 0 62 0 27 0 82 1 18 0 93 0 54 0 78 0 31 1 11 1 08 1 02 testY 1 1 1 1 1 2 2 2 2 2 2 2 2 然后我对它
  • 删除 pyspark 中所有列名称中的空格

    我是 pySpark 的新手 我收到了一个大约有 1000 列的 csv 文件 我正在使用数据块 大多数这些列之间都有空格 例如 总收入 总年龄 等 我需要更新所有带有下划线 空格的列名称 我已经尝试过这个 foreach DataColu
  • 根据另一个数据帧替换数据帧中的值

    我有以下两个数据框 gt df1 lt data frame A c 0 0 0 B c 0 201 0 C c 0 467 0 A B C 1 0 0 1 2 0 201 467 3 0 0 0 gt df2 lt data frame
  • 如何在R中设置plotly图表具有透明背景?

    到目前为止 这是我所拥有的 f1 lt list family Arial sans serif size 25 color white f2 lt list family Old Standard TT serif size 14 col
  • Mysql:检查范围时间冲突[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我有下表 其中存储了教师的课堂例程
  • 使用正则表达式过滤并返回匹配的数字

    在这里 我尝试使用正则表达式从文本中过滤特定的电话号码 电话名称可能有这样的漏洞 4023one345233应被视为40231345233然后应该过滤 这段代码运行良好 没有漏洞 code1 arrwords array 0 gt zero
  • 如何安全地存储 Android KeyStore 密码

    在一个应用程序中 我使用 Android KeyStore 我已经为整个密钥库和每个密码条目设置了一个密码 由于这些密码是字符串 因此它们存储在代码中的字符串成员中 显然 如果我想发布应用程序 这是不安全的 因为潜在的攻击者可以反编译 ap
  • 按降序按组连接值[重复]

    这个问题在这里已经有答案了 我想要一个数据 我的数据 A 看起来像 author id paper id prob 731 24943 1 731 24943 1 731 688974 1 731 964345 8 731 1201905