如何根据 R 数据框中特定列的条件获得行式最大值?

ltlf653

我试图def_59_z_#根据已经过去的时间(自火灾以来的时间- 获得跨几列(气候缺水 - 的最大值 BY ROW YEAR.DIFF以下是条件:

  • 如果已过 1 年,请选择第一年的赤字值。( def_59_z_1).
  • 如果 2 年:前 2 年的最大赤字。
  • 如果 3 年:前 3 年的最大赤字。
  • 如果 4 年:前 4 年的最大赤字。
  • 如果 5 年或以上:最多前 5 年。

但是,当我包含条件时,我无法提取行式最大值。有几个现有的帖子解决了按行的最小值和最大值(示例12)和 sd (示例3)——但这些不使用条件。我试过使用,apply但当我涉及多个列以及条件要求时,我无法找到解决方案。

下面的代码只是返回3.5的新列def59_z_max15,这是发生在数据帧的最大值-除了YEAR.DIFF为1时,在这种情况下,def_50_z_1直接返回。但是对于所有其他条件,我想要 0.98、0.67、0.7、1.55、1.28——反映指定列的行最大值的值。此处链接到示例数据我怎样才能做到这一点?

我感谢任何/所有建议!

data <- data %>%
mutate(def59_z_max15 = ifelse(YEAR.DIFF == 1,
                            (def59_z_1),
                            ifelse(YEAR.DIFF == 2,
                                   max(def59_z_1, def59_z_2),
                                   ifelse(YEAR.DIFF == 3,
                                          max(def59_z_1, def59_z_2, def59_z_3),
                                          ifelse(YEAR.DIFF == 4,
                                                 max(def59_z_1, def59_z_2, def59_z_3, def59_z_4),
                                                 max(def59_z_1, def59_z_2, def59_z_3, def59_z_4, def59_z_5))))))
迪杰

将此函数放入apply家庭函数中

func <- function(x) {
first.val <- x[1]
if (first.val < 5) {
return(max(x[2:(first.val+)])
} else {
return(max(x[2:6]))
}
}

您所需的输出应通过以下方式获得:

apply(data, 1, function(x) func(x)) #do it by row by setting arg2 = 1

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据列中的最大值过滤数据框-熊猫

来自分类Dev

如何在R中的数据框中找到列的最大值?

来自分类Dev

根据列中的值返回数据框的行-R

来自分类Dev

R:如何获取时间序列数据中datetime列的最大值

来自分类Dev

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

来自分类Dev

如何以最大值为条件重塑R中的数据帧?

来自分类Dev

如何获得R数据框中满足特定条件的第一行?

来自分类Dev

如何根据R中的条件填充数据框

来自分类Dev

R如何根据后续行中的条件过滤数据帧?

来自分类Dev

如何找到数据帧或矩阵的最小值/最大值的位置(行/列)(R问题)

来自分类Dev

如何根据特定条件在R中交换两列?

来自分类Dev

如何在R中的数据框中获取列表的最大值

来自分类Dev

如何根据R中的条件分离小节?

来自分类Dev

如何根据R中的条件分配值?

来自分类Dev

如何根据R中多于1列的条件对数据帧中的行重新排序?

来自分类Dev

R使用dplyr根据一列中的最大值对数据框进行变异

来自分类Dev

如何根据另一个向量的值删除R中数据框中的列?

来自分类Dev

如何使用R根据数据框中单个列的最小值对特定列中的行进行子集

来自分类Dev

R根据条件从数据框中删除具有特定ID的所有行

来自分类Dev

如何根据行值的指定顺序从R中的数据框中删除列

来自分类Dev

如何根据R中向量的值转换数据帧的列?

来自分类Dev

R:如何根据条件移动列

来自分类Dev

根据R中的条件提取数据框中的特定行数?

来自分类Dev

如何使用R中的For循环获得矩阵中每列的最大值

来自分类Dev

使用 R 对数据框的行值求和 - 其中根据条件评估行中的每个值

来自分类Dev

如何使用最大值提取python数据框中的特定列

来自分类Dev

如何根据R中的条件使函数循环

来自分类Dev

从 Pandas 数据框中,根据其他列的分组和最大值返回特定列值

来自分类Dev

scala:如何获取数据框中列的最大值

Related 相关文章

  1. 1

    根据列中的最大值过滤数据框-熊猫

  2. 2

    如何在R中的数据框中找到列的最大值?

  3. 3

    根据列中的值返回数据框的行-R

  4. 4

    R:如何获取时间序列数据中datetime列的最大值

  5. 5

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

  6. 6

    如何以最大值为条件重塑R中的数据帧?

  7. 7

    如何获得R数据框中满足特定条件的第一行?

  8. 8

    如何根据R中的条件填充数据框

  9. 9

    R如何根据后续行中的条件过滤数据帧?

  10. 10

    如何找到数据帧或矩阵的最小值/最大值的位置(行/列)(R问题)

  11. 11

    如何根据特定条件在R中交换两列?

  12. 12

    如何在R中的数据框中获取列表的最大值

  13. 13

    如何根据R中的条件分离小节?

  14. 14

    如何根据R中的条件分配值?

  15. 15

    如何根据R中多于1列的条件对数据帧中的行重新排序?

  16. 16

    R使用dplyr根据一列中的最大值对数据框进行变异

  17. 17

    如何根据另一个向量的值删除R中数据框中的列?

  18. 18

    如何使用R根据数据框中单个列的最小值对特定列中的行进行子集

  19. 19

    R根据条件从数据框中删除具有特定ID的所有行

  20. 20

    如何根据行值的指定顺序从R中的数据框中删除列

  21. 21

    如何根据R中向量的值转换数据帧的列?

  22. 22

    R:如何根据条件移动列

  23. 23

    根据R中的条件提取数据框中的特定行数?

  24. 24

    如何使用R中的For循环获得矩阵中每列的最大值

  25. 25

    使用 R 对数据框的行值求和 - 其中根据条件评估行中的每个值

  26. 26

    如何使用最大值提取python数据框中的特定列

  27. 27

    如何根据R中的条件使函数循环

  28. 28

    从 Pandas 数据框中,根据其他列的分组和最大值返回特定列值

  29. 29

    scala:如何获取数据框中列的最大值

热门标签

归档