gpt4 book ai didi

r - 将整数向量分组为连续的游程

转载 作者:行者123 更新时间:2023-12-01 18:17:03 25 4
gpt4 key购买 nike

我有两个整数向量。我想确定以第一个向量为条件的第二个向量中呈现的连续整数序列的间隔(该向量可以视为一个因子,通过该因子可以将第二个向量分为几组)。

在这里,我为我的问题提供了一个虚拟模型。

数据,在第二个向量的一组(由第一个向量定义)中,整数单调递增。

my.data <- data.frame(
V1=c(rep(1, 10), rep(2, 9), rep(3,11)),
V2=c(seq(2,5), seq(7,11), 13, seq(4, 9), seq(11,13), seq(1, 6), seq(101, 105))
)

我想要什么:

  • 输出间隔的开始和结束
  • 此处,在第一列中分组,在第二列中分组起始整数,在第三列中分组结束整数。

预期结果:

1, 2, 5 \n
1, 7, 11 \n
1, 13, 13 \n
2, 4, 9 \n
2, 11, 13 \n
3, 1, 6 \n
3, 101, 105 \n

最佳答案

这是使用聚合的简短答案......

runs <- cumsum( c(0, diff(my.data$V2) > 1) )
aggregate(V2 ~ runs + V1, my.data, range)[,-1]


V1 V2.1 V2.2
1 1 2 5
2 1 7 11
3 1 13 13
4 2 4 9
5 2 11 13
6 3 1 6
7 3 101 105

关于r - 将整数向量分组为连续的游程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8400901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com