检查 R 向量中的序列

2023-12-31

我正在寻找一个函数或操作,如果我有

A <- c(1, 2, 3, 4, 5)

and B <- c(1, 2, 3)

and C <- c(2, 1)

检查 A 是否包含 B 时得到 TRUE,检查 A 是否包含 C 时得到 FALSE

基本上,相当于 %in% 运算符,但实际上关心元素的顺序

在一个完美的世界里,我不需要某种东西就能做到这一点apply声明,但我最终可能不得不


好吧,如果允许使用某种 apply 循环,那么这可以工作:

"%seq_in%" = function(b,a) any(sapply(1:(length(a)-length(b)+1),function(i) all(a[i:(i+length(b)-1)]==b))) 

(感谢 John Coleman 发现错误进行编辑!)

编辑2: 我也忍不住尝试解决“不连续”的情况:

# find_subseq() returns positions within vec of ordered elements of x, or stops with NA upon failing
find_subseq = function(x,vec) {
    p=match(x[1],vec)
    if(is.na(p)||length(x)==1){ p } 
    else { c(p,p+find_subseq(x[-1],vec[-seq_len(p)])) }
}
"%seq_somewhere_in%" = function(b,a) all(!is.na(find_subseq(b,a)))

例子:

1:3 %seq_in% 1:10
[1] TRUE
c(3,1,2) %seq_in% 1:10
[1] FALSE
c(1,2,3) %seq_in% c(3,2,1,2,3)
[1] TRUE
2:1 %seq_in% c(1,2,1)
[1] TRUE
1:3 %seq_somewhere_in% c(1,10,10,2,10,10,10,3,10)
[1] TRUE
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查 R 向量中的序列 的相关文章

  • R - 在浏览器中获取帮助而不是内置的 R 帮助程序

    我见过 R help 的两种不同行为 当你输入 density例如 帮助已在您的默认浏览器中打开 帮助在内置 R 帮助程序中打开 R 中的窗口 我目前有第二种行为 但我想在浏览器中打开帮助 我可以轻松地在这两种行为之间切换吗 无需重新安装
  • R 中的 NA 替换函数

    我正在尝试替换矩阵中的 NA mat 零 我在用着mat is na mat lt 0 当我有 18946 个变量的 94531 个观察值或更小的矩阵时 效果很好 但我在 22752 个变量的 112039 个观察值的矩阵上尝试它 R 显示
  • 用于清除工作空间和转储存储的 R 全局函数

    我希望创建一个全局函数来清除我的工作区并转储我的内存 我将我的函数称为 cleaner 并希望它执行以下代码 remove list ls gc 我尝试在全局环境中创建该函数 但是当我运行它时 控制台仅打印该函数的文本 在我要获取的函数文件
  • 使用 R 的 flextable 包时,有没有办法将传递给 add_header_lines() 的字符串部分加粗

    我正在使用我喜欢的 flextable 包为 Word 文档创建几个表格 但是 我在将表格标题中的部分文本加粗时遇到了一些麻烦 例如 我希望标题为 Table 1 我的表格标题的其余部分 而不是 表 1 我的表格标题的其余部分 I 找到这个
  • 将列表中的列转换为 R 中的数据框

    我有使用 R 创建的以下列表 set seed 326581 X1 rnorm 10 0 1 Y1 rnorm 10 0 2 data data frame X1 Y1 lst lt replicate 100 df smpl lt dat
  • 调整向量大小会使迭代器失效吗?

    我发现这个C 代码 vector
  • 从 R 中的 HTTPS 连接逐行读取

    当创建连接时open r 它允许逐行读取 这对于批量处理大数据流非常有用 例如这个脚本 https gist github com jeroenooms d33a24958d99bb969ac0通过一次读取 100 行来解析相当大的 gzi
  • 将 sf voronoi 多边形裁剪到边界框时出错

    我正在尝试将 voronoi polygons 使用 sf package 创建 剪辑 到边界框 但它引发了我无法定义的错误 我对 R 的空间世界不太有经验 感谢所有帮助 样本数据 stations lt structure list ST
  • 如何更改 Shiny 中 navbarPage 折叠的断点

    我想用shiny navbarPage collapsible TRUE 当在小屏幕上查看我的 Shiny 应用程序时 将导航元素折叠到菜单中 默认情况下 当浏览器宽度小于 940 像素时会触发折叠 有什么方法可以改变这一点 以便在稍大的浏
  • 将数据从 R 导出到 Excel

    我试图将从 R 获得的一些结果导出到 Excel 中 但未成功 我尝试过以下代码 write table ALBERTA1 D ALBERTA1 txt sep t write csv ALBERTA1 ALBERTA1 csv your
  • 如何按 data.table 中的十分位数组计算统计数据

    我有一个 data table 想按组计算统计数据 R set seed 1 R DT data table a rnorm 100 b rnorm 100 这些组应该定义为 R quantile DT a probs seq 1 9 1
  • 如何将此“for”循环转换为向量解

    这个问题与 将嵌入其他文本的长州名称转换为两个字母的州缩写 https stackoverflow com questions 25582518 convert long state names embedded with other te
  • glmnet 未从 cv.glmnet 收敛 lambda.min

    我跑了20倍cv glmnet套索模型以获得 lambda 的 最佳 值 但是 当我尝试重现结果时glmnet 我收到一个错误 内容如下 Warning messages 1 from glmnet Fortran code error c
  • r 中的 5 维图

    我正在尝试在 R 中绘制 5 维图 我目前正在使用rgl包以 4 个维度绘制数据 使用 3 个变量作为 x y z 坐标 另一个变量作为颜色 我想知道是否可以使用这个包添加第五个变量 例如空间中点的大小或形状 这是我的数据和当前代码的示例
  • 带 R 的多彩标题

    我想添加颜色某些词在我的图表标题中 我已经能够在这里找到一些先例 http blog revolutionanalytics com 2009 01 multicolor text in r html 具体来说 我希望用撇号括起来的文本 在
  • 表单提交时出现 rvest 错误

    我想从以下网页中抓取数据 https swgoh gg u zozo collection 180 emperor palpatine https swgoh gg u zozo collection 180 emperor palpati
  • ggplot散点图中的图例问题

    我想使用 ggplot 创建显示方法比较数据的散点图 绘图应包含原始数据 理想线和带误差的拟合线 图例应显示理想线和拟合线的线型 线宽 线颜色 我可以获得大部分我想要的东西 但是图例存在以下问题 图例显示每种线型有 2 条线 为什么 如何解
  • 在 R 中使用 Huggingface Transformer 模型

    我正在尝试在 R 中使用不同的 Huggingface 模型 这是通过 reticulate 导入 Transformer 包来实现的 谢谢 https rpubs com eR ic transfoRmers https rpubs co
  • 替换字符串/文本中“从第 n 次到最后一次”出现的单词

    这个问题以前曾被问过 但尚未得到令提问者满意的答案 https stackoverflow com questions 36368712 how to use stringrs replace all function to replace
  • 如何将 ggrough 图表另存为 .png

    说我正在使用R包裹ggrough https xvrdm github io ggrough https xvrdm github io ggrough 我有这个代码 取自该网页 library ggplot2 library ggroug

随机推荐

  • Tensorflow - 平均恢复模型的模型权重

    鉴于我在相同的数据上训练了多个不同的模型 并且我训练的所有神经网络都具有相同的架构 我想知道是否可以恢复这些模型 平均它们的权重并使用平均值初始化我的权重 这是图表外观的示例 基本上我需要的是我要加载的重量的平均值 import tenso
  • javascript中的dispatchEvent所有元素

    有没有办法调度所有元素 例如 我们可以这样做window dispatchEvent evt 但我想允许所有元素使用该事件 对于onclick 我们可以使用几乎所有元素 var evt document createEvent MouseE
  • 如何循环遍历 JSON 中的条目?

    我想循环 JSON 文件的内容并将其打印到控制台 我想我确实把一些东西和列表混淆了 这就是我试图得到的所有team name元素 from urllib2 import urlopen import json url http openli
  • Python 子进程调用,参数具有多个引号

    我在 bash 中使用以下命令来执行 Python 脚本 python myfile py c USA g CA 0 2011 10 13 1 2011 10 27 我正在编写一个 Python 脚本来解决这个问题 我目前不得不使用 os
  • 按年份选择前 n%

    我构建了一个查询 可返回截至最近完成的月份的年初至今净销售额 查询联合发票和贷项凭证的总计 效果很好 我在另一个工具中使用查询 该工具通过卡代码求和 并允许我进行有趣的数据透视等 这是该查询 select x cardcode x cust
  • 如何访问 Android 的默认蜂鸣声?

    我想让一个按钮发出蜂鸣声来表明它已被按下 我想知道如何使用默认的 Android 蜂鸣声 例如调整铃声音量时 而不是导入我自己的 mp3 音乐文件或使用 ToneGenerator 使用默认的 android 蜂鸣声 就像当你调整 铃声音量
  • 双重爆炸数组

    字符串 user hello user2 world 期望的输出 string array 1 gt array 1 gt user 2 gt hello 2 gt array 1 gt user2 2 gt world 我尝试过的 不起作
  • Java 类路径问题

    我有两节课 我的应用程序 Library 该库已被编译为Library class 并且源代码不再可用 我现在正在尝试从源代码编译 MyApplication MyApplication 依赖于库 该库的包名称为 org myCompany
  • 分析来自谷歌文档表单的多重响应字段

    我用 Google Doc 制作的一份调查问卷有一个多重响应集 假设三个可能的问题是 foo bar foobar 允许人们勾选一个或多个答案 在我的谷歌电子表格结果中 我有 answer1 foo answer2 foo bar answ
  • @font-face 用于自定义字体,Chrome 中的字体不平滑

    我有一个 Web 应用程序 它使用 CSS3 的 font face 来嵌入自定义字体 到目前为止 这在 IE 和 Firefox 中都可以完美运行 然而 在 Chrome 中 自定义字体显得像素化且不平滑 下面是 Firefox IE 上
  • IE8 将动态 iframe 内容从缓存重新加载到错误的 iframe 中

    我有一个页面 上面有多个 iframe 每个 iframe 都会调用一些 javascript 动态地将新的 iframe 写入父窗口的文档中 这在首页加载时效果很好 但是 如果在 IE8 及更早版本 中刷新页面 动态生成的 iframe
  • 如何将用户重定向到 ACS 默认登录页面

    我正在使用天蓝色Access Control System ACS 在我的网络应用程序中对来自不同身份提供商的用户进行身份验证 我成功注册了使用 ACS 的申请 现在 我通过从 web config 文件中删除以下内容 删除了 ACS 的完
  • 从文本观察器访问编辑文本

    我正在使用 textWatcher final EditText et EditText findViewById R id editText1 final TextView tv TextView findViewById R id te
  • 监视文件更改时打开太多文件

    我正在为 iPad 开发一个基于文档浏览器的应用程序 我一直在使用SKQueue https github com daniel pedersen SKQueue监视文件的更改 以确保当用户在文档浏览器中执行操作时其元数据保持最新 启动监控
  • 每次更新路由时调用一个函数 vue.js

    我的应用程序中集成了对讲机 我需要拨打电话window Intercom update 每次我的网址改变时 我知道我可以添加它mounted 但我宁愿不修改我的所有组件并直接使用导航守卫 https router vuejs org en
  • 如何使无头浏览器可见 Python

    我通过设置以下参数创建了一个无头 webdriver chrome 浏览器 chrome options add argument headless 然后使用以下命令打开浏览器 driver webdriver Chrome executa
  • 更新jar中的类,指定目录吗?

    我想更新 jar 中的 class 文件 class 文件位于 jar 的文件夹中 如果我想更新它 我需要指定它所在的具体路径名吗 Do I do jar uf myJar jar myFolder myClass class or jus
  • C语言中的stdin是什么?

    我想构建自己的 scanf 函数 基本思想是将数据从一个内存地址保存到另一个内存地址 什么是标准输入 它是像 000ffaa 这样的内存地址吗 如果它是一个内存地址 那么它是什么 这样我就可以构建自己的 scanf 函数 谢谢 No std
  • 如何使用 Double 函数获取空值? [复制]

    这个问题在这里已经有答案了 可能的重复 从 C 创建 Excel XLS 和 XLSX 文件 https stackoverflow com questions 151005 create excel xls and xlsx file f
  • 检查 R 向量中的序列

    我正在寻找一个函数或操作 如果我有 A lt c 1 2 3 4 5 and B lt c 1 2 3 and C lt c 2 1 检查 A 是否包含 B 时得到 TRUE 检查 A 是否包含 C 时得到 FALSE 基本上 相当于 in