将值匹配到R中另一个列表中最接近的较大值

格雷格

关于如何从列表中查找哪个数字最接近给定数字,存在几个 问题这些答案大多涉及两面whichwhich.min两面,因此它们从最接近给定数字的列表中返回该数字,而不管该数字是大于还是小于给定数字。

我想强制返回的数字大于给定的数字,除非给定的数字本身出现在列表中。此功能有效,但是有更简单的方法吗?

viable_numbers <- c(15, Inf, 5, 10, 5)

picker <- function(x, viable_numbers) {
  if (x %in% viable_numbers) {
    return(x)
    
  } else {
    viable_numbers <- sort(unique(viable_numbers))
    return(viable_numbers[findInterval(x, viable_numbers) + 1])
  }
}
    
picker(x = 1, viable_numbers = viable_numbers)
[1] 5 # works
picker(x = 5, viable_numbers = viable_numbers)
[1] 5 # works
picker(x = 6, viable_numbers = viable_numbers)
[1] 10 # also works
picker(x = 20, viable_numbers = viable_numbers)
[1] Inf # still working

我更喜欢一个base解决方案,但也很乐意tidyverse回答。

27 ϕ 9

您可以选择等于或大于x的可行数字子集的最小值:

picker <-  function(x, viable_numbers) {
  min(viable_numbers[viable_numbers >= x])
}

picker(x = 1, viable_numbers = viable_numbers)
[1] 5
picker(x = 5, viable_numbers = viable_numbers)
[1] 5 
picker(x = 6, viable_numbers = viable_numbers)
[1] 10 
picker(x = 20, viable_numbers = viable_numbers)
[1] Inf 

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将一个列表中的索引匹配到另一个列表并存储值?

来自分类Dev

在另一个表中查找与值最接近的匹配

来自分类Dev

将一个文件中的值匹配到另一个文件中

来自分类Dev

将数据框中的缺失值匹配到另一个值

来自分类Dev

给定R中的条件,找到最接近另一个值的位置

来自分类Dev

如何将数据框中的值匹配到另一个

来自分类Dev

Python:将一个列表中的值匹配到另一列表中的值序列

来自分类Dev

从 .csv 中获取最接近另一个数据帧中的值的值

来自分类Dev

将表中的两个值匹配到表sql中的另一个值

来自分类Dev

Swift:检查NSArray中哪个值最接近另一个给定值

来自分类Dev

如何在Pandas Dataframe中获取最接近另一个值的值

来自分类Dev

加速循环以用另一个数组中最接近的值填充数组

来自分类Dev

将空值设置为列表中最接近的最后一个非空值-LINQ

来自分类Dev

对于SQL中最后一个表中的每个元素,如何返回表中的实体的值,该值小于但最接近另一个表中的值?

来自分类Dev

对于SQL中最后一个表中的每个元素,如何返回表中的实体的值,该值小于但最接近另一个表中的值?

来自分类Dev

在另一个数组的特定列中查找数组中最接近的元素

来自分类Dev

根据ID将值从一个列表分配到另一个列表

来自分类Dev

如何根据最接近的匹配从另一个有效地替换大型数据框(100k +行)中的值?

来自分类Dev

从接近熊猫中另一个值的列列表中选择值

来自分类Dev

将唯一ID范围内的键/值匹配到另一个匹配键

来自分类Dev

查找另一个矩阵中矩阵中每一行的最接近值

来自分类Dev

SQL根据另一个表将值分配到表中

来自分类Dev

将整个列表与另一个数据框中的值匹配

来自分类Dev

如何将列表中的值与另一个匹配

来自分类Dev

将一个列表中的值匹配到数据框列

来自分类Dev

向量化为另一个数组中的每个元素在数组中找到最接近的值

来自分类Dev

向量化为另一个数组中的每个元素在数组中找到最接近的值

来自分类Dev

提取与最接近另一个日期的日期关联的值

来自分类Dev

确定与另一个日期值Teradata最接近的日期

Related 相关文章

  1. 1

    如何将一个列表中的索引匹配到另一个列表并存储值?

  2. 2

    在另一个表中查找与值最接近的匹配

  3. 3

    将一个文件中的值匹配到另一个文件中

  4. 4

    将数据框中的缺失值匹配到另一个值

  5. 5

    给定R中的条件,找到最接近另一个值的位置

  6. 6

    如何将数据框中的值匹配到另一个

  7. 7

    Python:将一个列表中的值匹配到另一列表中的值序列

  8. 8

    从 .csv 中获取最接近另一个数据帧中的值的值

  9. 9

    将表中的两个值匹配到表sql中的另一个值

  10. 10

    Swift:检查NSArray中哪个值最接近另一个给定值

  11. 11

    如何在Pandas Dataframe中获取最接近另一个值的值

  12. 12

    加速循环以用另一个数组中最接近的值填充数组

  13. 13

    将空值设置为列表中最接近的最后一个非空值-LINQ

  14. 14

    对于SQL中最后一个表中的每个元素,如何返回表中的实体的值,该值小于但最接近另一个表中的值?

  15. 15

    对于SQL中最后一个表中的每个元素,如何返回表中的实体的值,该值小于但最接近另一个表中的值?

  16. 16

    在另一个数组的特定列中查找数组中最接近的元素

  17. 17

    根据ID将值从一个列表分配到另一个列表

  18. 18

    如何根据最接近的匹配从另一个有效地替换大型数据框(100k +行)中的值?

  19. 19

    从接近熊猫中另一个值的列列表中选择值

  20. 20

    将唯一ID范围内的键/值匹配到另一个匹配键

  21. 21

    查找另一个矩阵中矩阵中每一行的最接近值

  22. 22

    SQL根据另一个表将值分配到表中

  23. 23

    将整个列表与另一个数据框中的值匹配

  24. 24

    如何将列表中的值与另一个匹配

  25. 25

    将一个列表中的值匹配到数据框列

  26. 26

    向量化为另一个数组中的每个元素在数组中找到最接近的值

  27. 27

    向量化为另一个数组中的每个元素在数组中找到最接近的值

  28. 28

    提取与最接近另一个日期的日期关联的值

  29. 29

    确定与另一个日期值Teradata最接近的日期

热门标签

归档