R group by 和aggregate - 使用 plyr 返回组内的相对排名

2024-01-23

更新:我有一个数据框“测试”,如下所示:

    session_id  seller_feedback_score
1   1   282470
2   1   275258
3   1   275258
4   1   275258
5   1   37831
6   1   282470
7   1   26
8   1   138351
9   1   321350
10  1   841
11  1   138351
12  1   17263
13  1   282470
14  1   396900
15  1   282470
16  1   282470
17  1   321350
18  1   321350
19  1   321350
20  1   0
21  1   1596
22  7   282505
23  7   275283
24  7   275283
25  7   275283
26  7   37834
27  7   282505
28  7   26
29  7   138359
30  7   321360

和一个代码(使用 plyr 包),显然应该对每组 session_id 中的“seller_feedback_score”进行排名:

 test <- test %>% group_by(session_id) %>% 
  mutate(seller_feedback_score_rank = dense_rank(-seller_feedback_score))

然而,真正发生的是 R 将整个数据帧排列在一起,而不与组(session_id)相关:

session_id  seller_feedback_score   seller_feedback_score_rank_2
1   1   282470  5
2   1   275258  7
3   1   275258  7
4   1   275258  7
5   1   37831   11
6   1   282470  5
7   1   26  15
8   1   138351  9
9   1   321350  3
10  1   841 14
11  1   138351  9
12  1   17263   12
13  1   282470  5
14  1   396900  1
15  1   282470  5
16  1   282470  5
17  1   321350  3
18  1   321350  3
19  1   321350  3
20  1   0   16
21  1   1596    13
22  7   282505  4
23  7   275283  6
24  7   275283  6
25  7   275283  6
26  7   37834   10
27  7   282505  4
28  7   26  15
29  7   138359  8
30  7   321360  2 

我通过计算唯一的“seller_feedback_score_rank”值来检查这一点,毫不奇怪,它等于最高排名值。如果有人可以重现并提供帮助,我将不胜感激。谢谢


一种选择:

library(dplyr)
df %>% group_by(session_id) %>% 
  mutate(rank = dense_rank(-seller_feedback_score))

dense_rank是“像 min_rank,但排名之间没有差距”,所以我否定了 seller_feedback_score 列,以便将其变成类似 max_rank 的内容(dplyr 中不存在)。

如果您想要有差距的排名,以便在您的情况下达到最低的 21,您可以使用min_rank代替dense_rank:

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

R group by 和aggregate - 使用 plyr 返回组内的相对排名 的相关文章

  • grid.arrange 中的错误 -rangeGrob() 函数

    我有两个图 p1 和 p2 我试图使用 grid arrage 绘制它们 我的代码如下所示 grid arrange p1 p2 ncol 2 top textGrob Distribution across each day of the
  • 根据不平凡的标准有效合并两个数据帧

    正在接听这个问题 https stackoverflow com questions 18821862 data selection error 18823432 18823432昨晚 我花了一个小时试图找到一个没有增长的解决方案data
  • 在 R 中按组检查重叠开始和结束时间

    我想检查数据的重叠 这是数据 ID lt c rep 1 3 rep 3 5 rep 4 4 rep 5 5 Begin lt c 0 2 5 3 7 8 7 25 25 10 15 17 20 1 NA 10 11 13 End lt c
  • 如果条件长度 > 1 并且仅使用第一个元素,为什么我会在 R 中收到此警告

    我有下面的源代码 这if is na monthData 用于检查是否monthData is NA 如果是 则为其分配一个初始值 monthData lt NA if category QUARTER for m in c rep 1 4
  • R:如何根据规范更改数据框中的列名称

    我有一个数据框 它的开头如下 SM H1455 SM V1456 SM K1457 SM X1461 SM K1462 ENSG00000000419 8 290 270 314 364 240 ENSG00000000457 8 252
  • 抑制 R 中的错​​误消息

    我正在 R 中运行模拟研究 有时 我的模拟研究会产生错误消息 当我在函数中实现模拟研究时 当出现此错误消息时模拟停止 我知道抑制错误是不好的做法 但此时对我来说 除了抑制错误然后继续下一个模拟 直到达到我喜欢运行的模拟总数为止 没有其他选择
  • ggplot2 - 添加具有不同中断和标签的辅助 y 轴

    是否可以使用 ggplot2 手动向辅助 y 轴添加中断和标签 see bottom right 我希望在右侧 y 轴上有更紧凑的中断 代表条形 该图将作为基本情况 然后我将展示如何更改辅助 y 轴上的分隔符和标签 sapply c pip
  • kmeans 对分组数据进行聚类

    目前 我尝试在分组数据中找到簇的中心 通过使用示例数据集和问题定义 我能够创建kmeans每个组内的集群 然而 当涉及到给定组的集群的每个中心时 我不知道如何获取它们 https rdrr io cran broom man kmeans
  • 如何将 R 数据框中的多个字符列合并为单个列

    我正在处理人口普查数据 需要将四个字符列合并为一列 Example LOGRECNO STATE COUNTY TRACT BLOCK 60 01 001 021100 1053 61 01 001 021100 1054 62 01 00
  • 使用管道语法处理模型列表

    我经常喜欢拟合和检查与 R 数据框中的两个变量相关的多个模型 我可以使用如下语法来做到这一点 require tidyverse require broom models lt list hp exp cyl hp cyl map df m
  • R:编写抛硬币的随机采样程序

    假设我们有以下情况 有一枚硬币 如果它正面朝上 那么下一次抛掷正面的概率是 0 6 如果是反面 那么下一次抛掷反面的概率也是 0 6 一个班有100名学生 每个学生随机抛掷硬币几次 Student n 的最后一次抛硬币不会影响 Studen
  • 使用滑动窗口动画 ggplot 时间序列图

    我正在寻找在不失去分辨率的情况下对长时间序列图进行动画处理的方法 我希望视图能够 平移 数据 显示从开始到结束的滑动子集 假设我有以下内容 library ggplot2 library dplyr library gganimate df
  • stat_function 从函数生成平线

    我有以下代码 library ggplot2 f lt function x if x gt 2 1 x 0 3 else 0 graph lt ggplot data frame x c 0 10 aes x graph lt graph
  • ggplot 图例标签内的希腊字母、符号和换行符

    我在尝试着 有换行符 自动或强制 对齐文本 左对齐或左右对齐 有希腊字母和百分号 在 gglot 图例标签内 我尝试了几种方法 但我似乎无法将我读到的所有技巧结合起来 我可以通过插入来换行 n进入标签 但这似乎不适用于希腊字母 不适用于图例
  • 使用自定义渐变填充直方图箱

    我想在 R 和 ggplot2 中创建一个直方图 其中根据连续的 x 值填充箱 大多数教程仅通过离散值或密度 计数进行着色 下列的这个例子 https stackoverflow com questions 40284227 how to
  • 如何使用 R 中的函数 sqlSave() 将数据附加到具有 IDENTITY 主键的 SQL Server 表?

    我在SQL Server中创建了一个表 如下所示 CREATE TABLE testPK ID INT NOT NULL IDENTITY 1 1 PRIMARY KEY NumVal NUMERIC 18 4 现在我想使用 RODBC 函
  • 美人鱼图:调整图表周围的空白

    我在用 Rstudio 编译的 Rmd 报告中使用了美人鱼图 在 HTML PDF 输出中 图表上方和下方有大量空白 请参见下面的示例 Header Text r library DiagrammeR mermaid graph TD cl
  • 如何有效地将多个光栅 (.tif) 文件导入 R

    我是 R 新手 尤其是在空间数据方面 我正在尝试找到一种方法来有效地将多个 600 单波段栅格 tif 文件导入到 R 中 所有文件都存储在同一文件夹中 不确定这是否重要 但请注意 在我的 Mac 和 Windows 并行 VM 上的文件夹
  • 将所有分号替换为空格 pt2

    我尝试对 2000 多行关键字的列表运行文本分析 但它们的列出方式如下 战略 管理风格 组织 所以当我使用 tm 删除标点符号时 它就变成了 组织的战略管理风格 我认为这在某种程度上破坏了我常用术语的分析 我尝试过使用 vector lt
  • R闪亮:使用闪亮的JS从数据表中获取信息

    我想读出所有列名称以及它们在数据表中显示的顺序 由于不同的原因 我无法使用 stateSave 等选项 我对 JS 没有什么把握 但我确信用它可以完成 所以我需要你帮助我 我尝试过类似的代码片段 datatable data callbac

随机推荐

  • EditText - 文本和 EditText 行之间的间隙

    When I insert text to my EditText field the text has an abnormal gap between itself and the EditText s line Here s a pri
  • Java XPath(Apache JAXP 实现)性能

    注意 如果您也遇到此问题 请在 Apache JIRA 上投票 https issues apache org jira browse XALANJ 2540 https issues apache org jira browse XALA
  • 如何将 Android 应用本地化为印度尼西亚语

    我需要将我的应用程序本地化为印度尼西亚语言 我的应用程序的资源文件夹包含每种语言的 values 子文件夹列表 例如 values fr 文件夹 但我读到了令人困惑的信息Android 开发者文档 http developer androi
  • 当 xml 更改时,Odoo 模板页面不会更新

    刚刚为客户启动 Odoo 我在模板方面遇到了一个重大问题 一个简单的模板 有一些 div 和标题 我还有一个记录可以在主菜单中显示 当我第一次创建它时 一切正常 但是 如果我想添加或更改一些 html 这些更改不会显示在网站页面上 即使在我
  • 开源 Java CMS [已关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 谁能推荐一个好的java开源cms 我没有使用过任何java cms 但我使用过wordpress 环顾谷歌 我列出了 openCMS d
  • 使用 GCD 在后台创建 UIKit 对象是一种不好的做法吗?

    正如所指出的bbum https stackoverflow com users 25646 bbum here https stackoverflow com a 18463249 2707614 医生说 大多数情况下 UIKit 类只能
  • 贪心算法:区间着色

    在间隔调度中 算法是选择最早完成时间 但在间隔着色中 前者不起作用 是否有示例或解释为什么选择最早完成时间不适用于间隔着色 区间着色问题是 给定一组区间 我们想要着色 所有间隔 以便给定相同颜色的间隔不相交 目标是尽量减少使用的颜色数量 这
  • 如何在 jupyter markdown 单元格中创建新行

    md S a set of shops I a set of items M wants to get 我想在这两句话之间换一条新线 我们通常在第一个句子之后在新行之前放置 空格 但它在 Jupyter 中不起作用 我怎样才能做到这一点 我
  • 没有名为“requests”的模块 Python 3.5.0

    我需要使用requests在我的代码中 但它说它尚未安装 我收到以下错误 No module named requests 它实际上已在 python 2 7 中安装并运行 Requirement already satisfied use
  • 无法使用存储过程 pyodbc SQL SERVER 创建数据库

    我正在尝试调用一个从 pyodbc 创建数据库的存储过程 以下是代码的最小示例 import pyodbc conn pyodbc connect Driver SQL Server Server SERVERNAME Trusted Co
  • Tomcat 正在运行吗?

    有兴趣了解人们通常如何检查 Tomcat 是否在 Unix 环境上运行 我要么使用以下命令检查进程是否正在运行 ps ef grep java ps ef grep logging 或者我检查端口号是否处于活动状态 netstat a gr
  • 在 MAX(DATE) 上左连接

    我有 2 个表 交易 a 和价格 b 我想从表 b 中检索交易日期有效的价格 表a包含物品交易的历史记录 商店类型 日期 文章 表 b 包含商品价格的历史记录 商店类型 日期 文章 价格 目前我有这个 Select a Store type
  • opencv 更新单应性矩阵以适合双倍大小的图像

    我正在使用光流进行视频稳定 为了使 calcOpticalFlowPyrLK 更快地工作 我将原始图像缩小了 2 倍并在其上运行该函数 如何修改单应矩阵 通过 findHomography 检索 以便能够扭曲透视原始的较大图像 这有点晚了
  • 如何重置/初始化变量?

    我遇到了变量问题 首先看到这段代码 然后我会解释我的问题 if pygame Rect colliderect hammer rect mole rect random locations 100 440 350 440 600 440 1
  • 重新采样环回捕获

    我使用以下代码成功从 Wasapi 捕获声音 IWaveIn waveIn new WasapiLoopbackCapture waveIn DataAvailable OnDataReceivedFromWaveOut 我现在需要做的是将
  • 对于具有动态标头的大部分静态页面来说,最佳的 Rails 缓存选项是什么

    我有一组主要是静态的页面 除了它们的布局包含更加动态的标题之外 我很乐意将其页面缓存相对较长的时间 到目前为止 最有前途的想法似乎是使用不带布局的操作缓存 class SomethingController lt ApplicationCo
  • iOS 脸书集成

    我正在开发简单的 Facebook 集成 允许用户将高分发布到他们的墙上 doodlejump 处理这个问题的方式是我的灵感来源 我可以使用它 但它不是很干净 我不知道该怎么做 我按照以下说明进行操作http developers face
  • 在Python中从目录(有大量文件)中选择随机文件

    我有一个包含大量文件 约 100 万 的目录 我需要从此目录中选择一个随机文件 由于文件太多 os listdir自然需要永恒的时间才能完成 有什么办法可以绕过这个问题吗 也许以某种方式了解目录中的文件数量 不列出它 并选择随机生成 n 的
  • 在项目中包含 image_picker 时出错(Flutter)

    为什么当我执行项目时不断出现此错误 一旦我将 image picker 放入我的 pubspec 中 就会发生这种情况 失败 构建失败并出现异常 什么地方出了错 任务 app processDebugResources 执行失败 Andro
  • R group by 和aggregate - 使用 plyr 返回组内的相对排名

    更新 我有一个数据框 测试 如下所示 session id seller feedback score 1 1 282470 2 1 275258 3 1 275258 4 1 275258 5 1 37831 6 1 282470 7 1