代码之家  ›  专栏  ›  技术社区  ›  Sati

查找每个向量元素所在的范围[重复]

r
  •  0
  • Sati  · 技术社区  · 7 年前

    我有一个随机数的列表。

    x=sample(1:1000, 3)
    

    有没有一种简单的方法来获取每个元素所属的范围值列表?

    id=seq(1, 1000, by=50)
    
     [1]   1  51 101 151 201 251 301 351 401 451 501 551
    [13] 601 651 701 751 801 851 901 951
    

    x
    [1] 637 374  68
    
    distribution
    [1] "601~650" "351~400" "51~100"
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Terru_theTerror    7 年前

    试试这个简单的解决方案 findInterval

    cbind(x,lim_inf=id[findInterval(x,id)],lim_sup=id[findInterval(x,id)+1])
           x lim_inf lim_sup
    [1,] 378     351     401
    [2,] 609     601     651
    [3,] 496     451     501