我有一系列1到10之间的数字按升序排列,有些数字丢失了。我想找到每个缺失差距的第一个数字。我在R中这样做。例如:
numbers=c(1,2,5,6,7,10)
缺少的数字是3,4和8,9所以我想找到3和8:
3
8
有什么建议吗?感谢
答案 0 :(得分:2)
您可以使用diff
完成此操作,并按以下方式进行子集化
numbers[diff(numbers) != 1] + 1
[1] 3 8
diff(numbers) != 1
将返回一个逻辑向量,其中相邻元素不等于"计数"中的下一个数字。订购。 numbers[]
将对这些进行子集化,然后添加1以返回缺失值。