在R的行中返回三个最大值的函数

我有两组数据框架,我正在尝试创建一个函数,该函数将数据框架和行名作为参数,并返回行上的三个最大值(按降序排列)和三个列的名称最高价值。


    set.seed(0)
    df <- data.frame(A=c(3,2,1,4,5),B=c(1,6,3,8,4),C=c(2,1,4,8,9), D=c(4,1,2,4,6))
    row.names(df)<-c("R1","R2","R3","R4","R5")

    df2 <- data.frame(E=c(2,5,6,1,4),F=c(2,4,2,5,1),G=c(5,6,2,7,3),H=c(8,2,7,4,1))
    row.names(df2)<-c("R6","R7","R8","R9","R10")

    print(df)

       A B C D
    R1 3 1 2 4
    R2 2 6 1 1
    R3 1 3 4 2
    R4 4 8 8 4
    R5 5 4 9 6

    print(df2)

        E F G H
    R6  2 2 5 8
    R7  5 4 6 2
    R8  6 2 2 7
    R9  1 5 7 4
    R10 4 1 3 1

这是一个结果示例:

让函数为maxthree现在


    maxthree(df2, "R7")

    G E F
    6 5 4

到目前为止,这是我所做的:


    maxthree <- function(data,row) {
      if(!row %in% rownames(data)) {
        print("Check value")
      } else { 
        max_col <- which.max(data[row,])
        print(max_col)
      }
    }

现在,此函数将返回该行的最大值以及列名。但是,我现在不知道如何向函数添加第二和第三高值。

格雷戈尔·托马斯(Gregor Thomas)
maxthree = function(data, row) {
  data[row, order(unlist(data[row, ]), decreasing = TRUE)[1:3]]
}

maxthree(df2, "R7")
#    G E F
# R7 6 5 4

结果是一个1x3数据帧。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过两列合并三个数据帧,仅保留R中的最大值

来自分类Dev

软件R中一张图中的三个图的最大值

来自分类Dev

无法在 MySql 中获得第三个表连接的不同和最大值

来自分类Dev

返回行中3个最大值的列名称

来自分类Dev

如何从三个不同的列中选择10个最大值并将它们保存在R中的新数据框中?

来自分类Dev

返回行标签以获取Excel R中的最大值

来自分类Dev

在三个骰子列表中滚动两个骰子时找到最大值

来自分类Dev

GNU Octave / Matlab:如何获取数组中三个最大值的索引?

来自分类Dev

如何使用pivote从三列的行中找出最大值,即三列中的最大值

来自分类Dev

有没有一种快速的方法来计算三个值的最大值

来自分类Dev

为什么 long 在查找三个整数的第二个最大值时显示错误的输出?

来自分类Dev

Max()函数不返回最大值

来自分类Dev

将R中的行设置为两个最大值

来自分类Dev

方案:从三个数的集合中返回两个最大数

来自分类Dev

返回每组最大值的行

来自分类Dev

删除R中两个向量的最大值

来自分类Dev

R中两个相等的最大值

来自分类Dev

如何从12个不同的列中提取前三个值并返回关联的行名?

来自分类Dev

是否有一个函数返回最小值和最大值之间的整数?

来自分类Dev

创建函数,该函数返回行名和最大值

来自分类Dev

从SQL选择中返回最大值

来自分类Dev

在javascript对象中返回最大值

来自分类Dev

Cookie中的三个值

来自分类Dev

找到第二个索引的最小值,然后找到列表 Python 的第三个索引的最大值

来自分类Dev

对于d中第c行的每个值,返回最大值为a的行

来自分类Dev

函数不返回输入到数组中的最大值和最小值

来自分类Dev

从数字列表返回3个最大值的函数错误

来自分类Dev

返回N个最大值的单元格引用(地址)的函数

来自分类Dev

使用函数查找三个值中的最小值

Related 相关文章

  1. 1

    通过两列合并三个数据帧,仅保留R中的最大值

  2. 2

    软件R中一张图中的三个图的最大值

  3. 3

    无法在 MySql 中获得第三个表连接的不同和最大值

  4. 4

    返回行中3个最大值的列名称

  5. 5

    如何从三个不同的列中选择10个最大值并将它们保存在R中的新数据框中?

  6. 6

    返回行标签以获取Excel R中的最大值

  7. 7

    在三个骰子列表中滚动两个骰子时找到最大值

  8. 8

    GNU Octave / Matlab:如何获取数组中三个最大值的索引?

  9. 9

    如何使用pivote从三列的行中找出最大值,即三列中的最大值

  10. 10

    有没有一种快速的方法来计算三个值的最大值

  11. 11

    为什么 long 在查找三个整数的第二个最大值时显示错误的输出?

  12. 12

    Max()函数不返回最大值

  13. 13

    将R中的行设置为两个最大值

  14. 14

    方案:从三个数的集合中返回两个最大数

  15. 15

    返回每组最大值的行

  16. 16

    删除R中两个向量的最大值

  17. 17

    R中两个相等的最大值

  18. 18

    如何从12个不同的列中提取前三个值并返回关联的行名?

  19. 19

    是否有一个函数返回最小值和最大值之间的整数?

  20. 20

    创建函数,该函数返回行名和最大值

  21. 21

    从SQL选择中返回最大值

  22. 22

    在javascript对象中返回最大值

  23. 23

    Cookie中的三个值

  24. 24

    找到第二个索引的最小值,然后找到列表 Python 的第三个索引的最大值

  25. 25

    对于d中第c行的每个值,返回最大值为a的行

  26. 26

    函数不返回输入到数组中的最大值和最小值

  27. 27

    从数字列表返回3个最大值的函数错误

  28. 28

    返回N个最大值的单元格引用(地址)的函数

  29. 29

    使用函数查找三个值中的最小值

热门标签

归档