Collapse continuous integer runs to strings of ranges

后端 未结 6 616
小鲜肉
小鲜肉 2020-11-30 13:50

I have some data in a list that I need to look for continuous runs of integers (My brain thinkrle but don\'t know how to use it here).

It\'s easier to l

6条回答
  •  夕颜
    夕颜 (楼主)
    2020-11-30 14:05

    Using IRanges:

    require(IRanges)
    lapply(z, function(x) {
        t <- as.data.frame(reduce(IRanges(x,x)))[,1:2]
        apply(t, 1, function(x) paste(unique(x), collapse=":"))
    })
    
    # $greg
    # [1] "7:11"  "20:24" "30:33" "49"   
    # 
    # $researcher
    # [1] "42:48"
    # 
    # $sally
    # [1] "25:29" "37:41"
    # 
    # $sam
    # [1] "1:6"   "16:19" "34:36"
    # 
    # $teacher
    # [1] "12:15"
    

提交回复
热议问题