使用colnames返回数据框行中第一个出现的第二个最大值并应用

潘卡·昆达(Pankaj Kaundal)

考虑我有一个df

> editor
          A  B  C  D  E  F  G  H  I  J
User1     1  0  5  6  5  6  5  6  2  6
User2     0  5  4  6  4  5  5  1  7  5

我想在上面的行中存储第一个出现的第二个最大值的列名称。预期成绩

> editor
          A  B  C  D  E  F  G  H  I  J  2nd_highest
User1     1  0  5  6  5  6  5  6  2  6      C
User2     0  5  4  6  4  5  5  1  7  5      D

我尝试了edited$2nd_highest <- colnames(edited)[apply(edited, 1, which.max)+1]但表现不好。

有任何想法吗 ?

索托斯

这是一个主意。我们首先对unique每行值进行排序,然后提取第二个值。由于我们指定了decreasing = TRUE,因此第二个值将是第二高的值。然后,我们将新列表中每个元素的第一个值用作列名称的索引。

ind_lst <- apply(df, 1, function(i) which(i == sort(unique(i), decreasing = TRUE)[2]))
df$highest.two <- names(df)[unlist(lapply(ind_lst, '[', 1))]
df
#      A B C D E F G H I J highest.two
#User1 1 0 5 6 5 6 5 6 2 6           C
#User2 0 5 4 6 4 5 5 1 7 5           D

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

内部联接两个表,并为第二个表的第一个表中的每个条目返回最大值

来自分类Dev

sql获取第一个和第二个最大值的条件

来自分类Dev

在第一个数据框给定的2个日期之间找到第二个数据框的最小值和最大值

来自分类Dev

元组列表中每个第一个元素的 scala 获取第二个元素的最大值

来自分类Dev

替换R中第一个出现的“:”,而不是第二个

来自分类Dev

VBA:使用.Find方法查找第一个和第二个值出现

来自分类Dev

在第二个查询的值中使用第一个查询的值

来自分类Dev

在第二个查询的值中使用第一个查询的值

来自分类Dev

计算第二个序列中第一个序列的种子值

来自分类Dev

Python按第一个元素的最大值,然后第二个元素的最小值排序

来自分类Dev

Python按第一个元素的最大值,然后第二个元素的最小值排序

来自分类Dev

如何从此JSON数据的第二个元素中获取第一个值?

来自分类Dev

使用第一个集线器中的第二个集线器时,应用程序挂起

来自分类Dev

SQL Oracle-使用存储在第二个表中的值(行)的列名对第一个表中的列中的值求和

来自分类Dev

SQL Oracle-使用存储在第二个表中的值(行)的列名对第一个表中的列中的值求和

来自分类Dev

使用2组不同的数据创建存储过程(将第一个数据中的值用作第二个数据的参数)

来自分类Dev

如何使用第二个 sql 的名称从第一个表中删除值

来自分类Dev

选择第一个选择框值后填充第二个选择框

来自分类Dev

为什么我的第一个查询的值作为第二个查询的值返回?

来自分类Dev

使用第一个文本框输入自动填充第二个文本框

来自分类Dev

当第二个表中的布尔值为TRUE时,用第一个表覆盖第二个表的结果

来自分类Dev

当我从 API url json 数据中选择第一个选择框时,我想在第二个选择框中显示数据

来自分类Dev

根据数据帧R上成功第一个值的条件替换第二个值

来自分类Dev

如果第一个的返回值为true,则显示第二个复选框

来自分类Dev

根据第二个值找到内部数组的第一个值

来自分类Dev

在向量对中,找到第一个值等于X的对并返回第二个值,或者返回Y

来自分类Dev

MODx第二个runProcessor返回第一个的响应

来自分类Dev

WPF-从第二个窗口返回第一个窗口

来自分类Dev

MODx第二个runProcessor返回第一个的响应

Related 相关文章

  1. 1

    内部联接两个表,并为第二个表的第一个表中的每个条目返回最大值

  2. 2

    sql获取第一个和第二个最大值的条件

  3. 3

    在第一个数据框给定的2个日期之间找到第二个数据框的最小值和最大值

  4. 4

    元组列表中每个第一个元素的 scala 获取第二个元素的最大值

  5. 5

    替换R中第一个出现的“:”,而不是第二个

  6. 6

    VBA:使用.Find方法查找第一个和第二个值出现

  7. 7

    在第二个查询的值中使用第一个查询的值

  8. 8

    在第二个查询的值中使用第一个查询的值

  9. 9

    计算第二个序列中第一个序列的种子值

  10. 10

    Python按第一个元素的最大值,然后第二个元素的最小值排序

  11. 11

    Python按第一个元素的最大值,然后第二个元素的最小值排序

  12. 12

    如何从此JSON数据的第二个元素中获取第一个值?

  13. 13

    使用第一个集线器中的第二个集线器时,应用程序挂起

  14. 14

    SQL Oracle-使用存储在第二个表中的值(行)的列名对第一个表中的列中的值求和

  15. 15

    SQL Oracle-使用存储在第二个表中的值(行)的列名对第一个表中的列中的值求和

  16. 16

    使用2组不同的数据创建存储过程(将第一个数据中的值用作第二个数据的参数)

  17. 17

    如何使用第二个 sql 的名称从第一个表中删除值

  18. 18

    选择第一个选择框值后填充第二个选择框

  19. 19

    为什么我的第一个查询的值作为第二个查询的值返回?

  20. 20

    使用第一个文本框输入自动填充第二个文本框

  21. 21

    当第二个表中的布尔值为TRUE时,用第一个表覆盖第二个表的结果

  22. 22

    当我从 API url json 数据中选择第一个选择框时,我想在第二个选择框中显示数据

  23. 23

    根据数据帧R上成功第一个值的条件替换第二个值

  24. 24

    如果第一个的返回值为true,则显示第二个复选框

  25. 25

    根据第二个值找到内部数组的第一个值

  26. 26

    在向量对中,找到第一个值等于X的对并返回第二个值,或者返回Y

  27. 27

    MODx第二个runProcessor返回第一个的响应

  28. 28

    WPF-从第二个窗口返回第一个窗口

  29. 29

    MODx第二个runProcessor返回第一个的响应

热门标签

归档