如何找到连续数字的区间开始和结束的位置?

2024-05-25

我有一个向量

vec <- c(2, 3, 5, 6, 7, 8, 16, 19, 22, 23, 24)

连续的数字是:

c(2, 3)
c(5, 6, 7, 8)
c(22, 23, 24)

所以第一个向量从 2 开始,到 3 结束;

第二个向量从 5 开始,到 8 结束;

对于第三个向量,从 22 开始,到 24 结束;

有一个函数可以识别连续数字从哪里开始和结束吗?


通过使用diff检查每个连续值之间的差异,可以找到差异不存在的地方+1.

diff(vec)
## [1] 1 2 1 1 1 8 3 3 1 1
c(1, diff(vec)) != 1
## [1] FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE  TRUE  TRUE FALSE FALSE

然后使用cumsum制作组标识符:

cumsum(c(1, diff(vec))!=1)
## [1] 0 0 1 1 1 1 2 3 4 4 4

并用它来split您的数据:

split(vec, cumsum(c(1, diff(vec))!=1))
##$`0`
##[1] 2 3
##
##$`1`
##[1] 5 6 7 8
##
##$`2`
##[1] 16
##
##$`3`
##[1] 19
##
##$`4`
##[1] 22 23 24

哪个可以Filter编辑为连续值:

Filter(\(x) length(x) > 1, split(vec, cumsum(c(1, diff(vec))!=1)))
##$`0`
##[1] 2 3
##
##$`1`
##[1] 5 6 7 8
##
##$`4`
##[1] 22 23 24
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何找到连续数字的区间开始和结束的位置? 的相关文章

  • 正则表达式字符串中第一个和最后一个非点的位置

    我希望找到字符串的第一个和最后一个非点元素的位置 理想情况下我想这样做regex在基地R 我已经写过R解决问题的代码 不过 我对一个感兴趣regex解决方案 感谢您的任何建议 这是一个示例数据集和R代码以获得所需的结果 此代码拆分字符串并使
  • 如何计算R中移动窗口内的平均斜率

    我的数据集包含2个变量y 和 t 05s y 每 05 秒测量一次 我正在尝试计算移动中的平均坡度20秒窗口 即计算第一个 20 秒斜率值后 窗口向前移动一个时间单位 05 秒 并计算下一个 20 秒窗口 在以下位置生成连续 20 秒斜率值
  • 选择 R 中的数据表中隐藏时(在绿色加号下方)列的显示顺序

    Context 使用 DataTables 库制作交互式表格时 当屏幕宽度对于列的数量和宽度来说太窄时 列将隐藏在绿色 号下 我有一个非常宽的表格 有 20 多列 其中一些内容非常冗长 因此某些列在所有屏幕宽度下总是隐藏的 每次隐藏新列时
  • 通过间接引用列来修改数据框中的某些值

    我正在整理一些数据 我们将失败的数据分类到垃圾箱中 并按批次计算每个分类箱的有限产量 我有一个描述排序箱的元表 这些行按升序测试顺序排列 一些排序标签带有非语法名称 sort tbl lt tibble tribble weight lab
  • 时间戳半小时窗口内字段的平均值

    我的数据框有列名Timestamp es看起来像 Timestamp es 2015 04 01 09 07 42 31 2015 04 01 09 08 01 29 5 2015 04 01 09 15 03 18 5 2015 04 0
  • R 中的快速 QR 分解

    我有大量矩阵 需要对其执行 QR 分解并存储生成的 Q 矩阵 进行归一化 以便 R 矩阵在其对角线上具有正数 除了使用之外还有其他方法吗qr 功能 这是工作示例 system time Parameters for the matrix t
  • pyomo + 网状错误 6 句柄无效

    我正在尝试运行pyomo优化 我收到错误消息 Error 6 The handle is invalid 不知道如何解释它 环顾四周似乎与特权有关 但我不太明白 在下面找到完整的错误跟踪以及重现它的玩具示例 完整的错误跟踪 py run f
  • 朴素贝叶斯分类器仅基于先验概率做出决策

    我试图根据推文的情绪将推文分为三类 买入 持有 卖出 我正在使用 R 和包 e1071 我有两个数据框 一个训练集和一组需要预测情绪的新推文 训练集数据框 text sentiment this stock is a good buy Bu
  • ddply 和aggregate 之间的区别

    有人可以通过以下示例帮助我了解聚合和 ddply 之间的区别 数据框 mydat lt data frame first rpois 10 10 second rpois 10 10 third rpois 10 10 group c re
  • 如何在 R 中匹配多个 ggplot2 图中的调色板?

    自从被问到这个问题以来已经有一段时间了 但我知道一个事实 我很快就会提取新数据 我想弄清楚如何用这种技术来绘制它 看起来评论和答案中的人知道如何做到这一点 但我无法完全弄清楚所给我的内容 还有人想尝试一下吗 我正在尝试使用具有多个级别的因子
  • 为什么 R 更新后 sim_slopes() 中会出现此错误?

    我正在尝试使用 交互 包来创建简单斜率的约翰逊 尼曼图 但是 当尝试运行 sim slopes 函数时 出现以下错误 直到我将R更新到4 2 2 我才没有遇到这个问题 我使用的是 macOS Ventura 13 1 Error class
  • 使用 ggmap 截断密度多边形

    我在使用 R ggmap 绘制密度图时遇到问题 我的数据如下所示 gt head W date lat lon dist 1 2010 01 01 31 942 86 659 292 415 2 2010 01 10 32 970 84 1
  • 如何从 R 读取 PDF 元数据

    我们很好奇 有没有一种方法可以从 R 读取 PDF 元数据 例如下面显示的信息 通过搜索我对此无能为力 r pdf metadata在当前的问题库中 非常欢迎任何指点 我想不出纯 R 的方法来执行此操作 但您可能可以安装您最喜欢的 PDF
  • 如何使用 SparkR 1.6.0 写入 JDBC 源?

    使用 SparkR 1 6 0 我可以使用以下代码从 JDBC 源读取数据 jdbc url lt jdbc mysql localhost 3306 dashboard user
  • 删除极坐标图边缘的多余空间和圆环

    我有一个极坐标图ggplot2我已经非常接近完成 相当简单的情节 我已经能够在删除矩形边框方面获得帮助 但我不需要删除最后一个范围轮廓与带有方位角标签的绘图周围的环之间的额外空间 我希望该图的边界为 15 000 而不是 15 214 我编
  • SPSS 中的标准化残差与 R rstandard(lm()) 不匹配

    在寻找 R 相关解决方案时 我发现 R 和 SPSS 版本 24 在计算简单线性模型中的标准化残差方面存在一些不一致 看来SPSS所谓的标准化残差匹配 R学生化残差 我完全不认为某处存在软件错误 但显然这两个程序之间存在差异 看看这个例子
  • R:使用 tidyverse 将 NA 替换为 df 中的其他变量

    我想使用 tidyverse 替换 df 中的 NA 值 我想要的值应该从其他列中计算出来 input ID X1 X2 X3 A 0 96 NA 0 97 B 1 00 NA 1 01 C 0 98 0 03 NA A 1 00 NA 1
  • 如何修复 R 中 Kaplan Meier 图的风险表计算错误

    以下是一个数据帧 其中 6 个参与者中的每一个都有唯一的 record ID 我想绘制一个生存分析图 其中包含感兴趣事件的复发以及在时间间隔 tstart 到 tstop 内 暴露 药物剂量 数值变量 的时间依赖性协变量 每个参与者的最大
  • 在 ifelse() 语句内部和外部运行一行时的不同输出

    我正在尝试运行一个简单的命令 但不知道为什么在内部和外部运行它时输出不同ifelse 功能 函数条件评估为FALSE 所以输出应该完全相同 但是 单独运行时 输出为0 0 1 1 0 1 0 1 NA 根据需要 但是从ifelse 函数 输
  • 线性判别分析图

    如何将样本 ID 行号 作为标签添加到此 LDA 图中的每个点 library MASS ldaobject lt lda Species data iris plot ldaobject panel function x y points

随机推荐

  • Cassandra 按非聚集键对结果进行排序

    我们使用 Cassandra 的用例是显示前 10 个recent博客文章的访问者 以下是 Cassandra 表定义 CREATE TABLE blogs by visitor blogposturl text visitor text
  • Android java.exe 以非零退出值 1 结束 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我尝试过查看类似的解决方案 但没有解决方案有效 我以前运行应用程序没有问题 但我的新应用程序突然开始给我带来问题 当我尝试运行它时总是
  • jQuery .slideRight 效果

    我需要一个 div 标签在屏幕右侧滑出 如何使用 jQuery 获得这种效果 我一直在这里寻找 http api jquery com category effects sliding http api jquery com categor
  • 关于将布尔值与 True 或 False 进行比较的奇怪 PEP8 建议

    Python 的最后PEP 8 http www python org dev peps pep 0008 我正在阅读 不要使用以下方法将布尔值与 True 或 False 进行比较 Yes if greeting No if greeti
  • 设置 Flutter 底部导航栏不活动

    我有一个带有底部导航栏的应用程序 BottomNavigationBar type BottomNavigationBarType fixed items BottomNavigationBarItem icon Image asset a
  • d3 v4 使用 TypeScript 进行拖放

    我正在使用 D3 库 v4 和 Angular2 我想拖放 svg 元素 我有一个代码 item call d3 drag on start dragStarted on drag dragged on end dragEnded and
  • 如何使用 fprintf 并写入管道?

    我创建了一个管道 并使用 dup2 将流 1 和 2 stdout 和 stderr 覆盖到这些管道中 现在我希望使用 fprintf 写入流 1 或 2 但我的程序似乎没有在管道的另一端接收到任何内容 我尝试过使用 printf 但我不确
  • 为什么 tkinter 在 Mac 上失败

    我在 Mac 上使用 tkinter 但是当我使用以下简单代码时 计算机将重新启动 import tkinter as tk window tk Tk 问题是什么 谢谢你 Mac 莫哈韦沙漠 版本 10 14 6 tkinter 版本 8
  • Resteasy 将 List 转换为 LinkedHashMap

    我正在使用 Resteasy 在一些 Restful Web 服务之间发送键 值对 要发布这些对的列表 我使用此片段 List
  • 复制可迭代对象的 Pythonic 方式

    对于我正在进行的一个小项目 我需要循环浏览一个列表 对于此循环的每个元素 我必须通过同一列表启动另一个循环 前一个元素作为新循环的第一个元素 例如 我希望能够制作出这样的东西 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
  • Python 如何找到 sys.prefix(或 sys.base_prefix)的值?

    锡上写着什么 我已经解开了如何解开的谜团sys prefix使用虚拟环境时设置 Python 寻找pyvenv cfg file 1 https www python org dev peps pep 0405 specification
  • Node.js fast-csv 同步读取文件并返回数组

    我正在尝试读取 csv 文件并使用以下代码将其分配给数组 const fs require fs const csv require fast csv parse let data csv parseFile downloads aggio
  • 如何使用 Postgres 数据库 URL 字符串传递证书路径以进行 SSL 连接

    我正在尝试通过 SSL 为我的 Spring 启动应用程序保护与 AWS RDS 实例的连接 我看了几个博客和官方文档 https jdbc postgresql org documentation head ssl client html
  • 迦太基依赖项禁用位码

    Scenario 我的项目 为 iOS watchOS tvOS 共享的代码库 具有以下构建设置ENABLE BITCODE YES并利用尚不支持位码的基本库 尽管引用了 Apple 文档应用程序细化 https developer app
  • 如何根据一个值过滤远程表?

    我正在做一个filter using in 但 dplyr 翻译查询的方式似乎不正确 事实上 in 运算符对于多个值可以正常工作 但当仅存在单个元素时则不行 在我最初的场景中 过滤值是动态的 因此我希望有一个在这两种情况下都有效的函数 my
  • 如何在Keycloak资源中添加HTTP方法进行授权(无适配器)

    当使用 Keycloak 进行授权时 它允许创建受保护的资源 但它只允许定义 URI 我怎样才能添加资源的 HTTP 方法 虽然看起来政策执行者 https www keycloak org docs latest authorizatio
  • 无法在 typeScript 和 Webpack 中使用 p5.js

    我有一个使用图书馆的项目p5 js https github com processing p5 js Details 我的 Webpack 配置是 const path require path module exports entry
  • 即使收到 200 状态代码也重试 Scrapy 请求

    我正在抓取一个网站 有时会返回 200 但在 response body 中没有任何文本 当我尝试使用 Selector 解析它时会引发 AttributeError 是否有一种简单的方法来检查以确保正文包含文本 如果没有 则重试请求 直到
  • 如何在oracle中预测和转义单引号'

    假设我有一个列值aaa gh它会在 oracle 中抛出错误 提示 sql 命令未正确结束 我的问题是如果我不知道有多少 在我的价值范围内 我如何才能安全地逃脱它们 最好的方法是使用引用字符串文字技术 http lalitkumarb wo
  • 如何找到连续数字的区间开始和结束的位置?

    我有一个向量 vec lt c 2 3 5 6 7 8 16 19 22 23 24 连续的数字是 c 2 3 c 5 6 7 8 c 22 23 24 所以第一个向量从 2 开始 到 3 结束 第二个向量从 5 开始 到 8 结束 对于第