我有列表l
:从矢量选择升[x]其中(L [X] - 1 [X-1])> 1
l_in <- c(1:5, 8, 11:13, 17)
我想从该列表中选择l_in[x]
元件,其中(l_in[x] - l_in[x-1]) > 1
因此,输出应为:
l_out <- c(8, 11, 17)
此外,我也想从l_in
其是第一l_out
元件之前包括元件,所以outpu T应当是:
l_out2 <- c(5, 8, 11, 17)
感谢
我有列表l
:从矢量选择升[x]其中(L [X] - 1 [X-1])> 1
l_in <- c(1:5, 8, 11:13, 17)
我想从该列表中选择l_in[x]
元件,其中(l_in[x] - l_in[x-1]) > 1
因此,输出应为:
l_out <- c(8, 11, 17)
此外,我也想从l_in
其是第一l_out
元件之前包括元件,所以outpu T应当是:
l_out2 <- c(5, 8, 11, 17)
感谢
,我们可以尝试:
delta <- diff(l_in) > 1
c(l_in[which(delta)[1]], l_in[c(FALSE, delta)])
你肯定应该有13 l_out
?无论如何试试这个。
l_in <- c(1:5, 8, 11:13, 17)
l_out <- c()
for(i in 2:length(l_in)) {
if (l_in[i] - l_in[i-1] > 1) l_out <- c(l_out,l_in[i])
}
l_out <- c(l_in[which(l_in == l_out[1]) - 1],l_out)
l_out
[1] 5 8 11 17
你是对的,我已经修复OP。 –
你是对的,我已经修复了OP。 –
好的,我会相应地调整我的答案。 –