r - 如何找出数列中某个数字是等差数列的开头?

标签 r

不知道之前是否有过类似的问题。我是R语言的初学者,直到现在才找到解决方案。

我有一个序列:

a <- c(19, 20, 21, 54 ,55 ,56 ,57, 58, 59, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 473, 474, 475)

我想接号码19 54 256 473

我怎样才能实现这个目标?

最佳答案

我们可以使用diff来获取相邻元素之间的差异,如果差异不等于1则创建一个逻辑向量并提取对应的元素

a[c(TRUE, diff(a) != 1)]
[1]  19  54 256 473

关于r - 如何找出数列中某个数字是等差数列的开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70352617/

相关文章:

r - 为什么 R 在这个随机排列函数上很慢?

r - 使用两个变量过滤 data.table,一种优雅的快速方法

sql - 在 dbplyr 管道中使用类似 grepl 的字符串匹配

R查找平均订单间隔(天数)

java - 如何使用C和Fortran语言使用Renjin Maven插件

r - 查找一列的最大值(按组)并将值插入到 R 中的另一个数据框中

R:ggplot2 条形图和误差条

具有范围(或聚合)的 R group_by

r - 在 R 中编码函数的向量化方法

r - 当使用不同的数据集时,文本相对于绘图区域的一致定位