You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言中合并两个列表生成非连续区间列表?

R语言合并起始/结束向量生成非连续区间列表

你可以通过以下几种方式实现需求:

基础R实现

直接利用mapply逐个生成对应区间,再用unlist合并为单一向量:

start <- c(1, 5, 11)
end <- c(2, 9, 13)

result <- unlist(mapply(function(s, e) s:e, start, end))

执行后result即为c(1:2, 5:9, 11:13)对应的完整数值向量。

tidyverse工具实现

如果习惯使用tidyverse生态,可借助purrr包的map2函数简化代码:

library(purrr)

start <- c(1, 5, 11)
end <- c(2, 9, 13)

result <- map2(start, end, `:`) %>% unlist()

map2会自动配对start和end的元素生成区间,管道符%>%配合unlist完成合并。

内容的提问来源于stack exchange,提问作者Caterina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 21:52:01