检查 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 向量中的序列 的相关文章

  • ggplot 中的条形图,每组有不同数量的条形图

    我的数据集如下所示 DSET lt data frame cbind c rep V1 3 rep V2 3 V3 c rep c X1 X2 X3 2 X1 c rep 1 7 names DSET lt c A B C DSET 3 l
  • 如何扩展 ggplot y 轴限制以包含最大值

    通常 在图中 Y 轴值标签会在绘制的最大值下方被截断 For example library tidyverse mtcars gt ggplot aes x mpg y hp geom point 我知道scale y continous
  • 计算横截面积作为高度的函数

    我试图弄清楚如何计算不同水位的河流横截面的充满水的面积 对于横截面 我有 5 m 宽河流上每 25 cm 的深度 并且可以根据之前很好回答的问题来计算面积计算不同高度的横截面积 https stackoverflow com questio
  • 使用多边形图层下方的轮廓线切割多边形

    我想根据高程将多边形图层切割成两部分 上部和下部 多边形可能是凸的或凹的 并且切割的位置可能彼此不同 等高线的间隔为 5m 这意味着我可能需要生成一个具有更紧凑的等高线的等高线 例如 1m 的间隔 关于如何做到这一点的任何想法 在 ArcG
  • 将 stat_smooth 添加到 ggplot2 中的仅 1 个方面

    我有一些数据 在某个因素的某个水平上 存在显着的相关性 在另一个层面上 则没有 并排绘制这些图很简单 使用 stat smooth 向它们添加一行 也很简单 但是 我不希望线条或其填充显示在两个面之一中 有没有一种简单的方法可以做到这一点
  • C++ std::vector 搜索值

    我正在尝试优化std vector 搜索 基于索引的迭代向量并返回与 搜索 条件匹配的元素 struct myObj int id char value std vector
  • ggplot2中的两列分组

    是否可以按两列分组 于是叉积就画出来了 经过geom point and geom smooth 例如 frame lt data frame series lt rep c a b 6 sample lt rep c glass wate
  • 将多个函数应用于一个向量

    我正在寻找一种将多个函数应用于一个向量的选项 我认为这对于逆应用函数来说是一种仁慈 其中一个函数应用于许多向量 或列 有没有办法指定两个或多个函数 例如 min 和 max 并将其应用于向量 与 CathG的评论类似 但没有get v lt
  • ‘!’ 对于 R 中的因子没有意义

    我需要从数据框中排除变量 PABI 所以 我按如下方式进行子集化 MyData4 lt subset MyData PROV PABI newdata lt MyData MyData4 但我得到了这个错误 Error in FUN lef
  • 挑战:优化取消列出[简单]

    因为 SO 最近有点慢 所以我发布了一个简单的问题 如果大鱼们能在这场比赛中留在替补席上并给新秀们一个回应的机会 我将不胜感激 有时我们的对象具有大量的大列表元素 向量 您如何将这个对象 取消列出 到单个向量中 证明你的方法比unlist
  • 如何从数据框中按降序获取前n家公司

    我正在尝试从数据框中获取排名前 n 的公司 下面是我的代码 data Forbes2000 package HSAUR sort Forbes2000 profits decreasing TRUE 现在我想从这个排序向量中获取前 50 个
  • 将一长行带空格的数据导入R中

    这个问题是我上一个问题的后续问题 将一长行数据导入到 R 中 https stackoverflow com questions 8389913 我有一个由单行文本组成的大型数据文件 格式类似于 Cat 14 15 Horse 16 我最终
  • 如何使用 Rcpp 将 C 结构从 C 库公开到 R

    我正在尝试将 C 结构从 C 库公开到 R 中 例如 struct A int flag 库提供 API 来构造和销毁是很常见的A A initA void freeA A a 感谢RCPP MODULE 很容易暴露它而不考虑析构函数 in
  • R:igraph、社区检测、edge. Betweenness 方法、统计/列出每个社区的成员?

    我有一个相对较大的图表 其中顶点 524 边 1125 是现实世界的交易 边是有向的并且具有权重 包含是可选的 我正在尝试调查图中的各个社区 并且本质上需要一种方法 计算所有可能的社区 计算最佳社区数量 返回每个 最佳 社区的成员 成员数量
  • do.call 的 envir 选项如何工作?

    的文档do call states If quote is FALSE 默认值 然后对参数进行求值 在调用环境中 而不是在envir 这句话向我暗示 当quote FALSE 指定envir没有什么区别 然而 事实并非如此 事实上我遇到过需
  • 包什么时候需要为它自己的对象使用 :::

    考虑这个 R 包有两个函数 一个是导出函数 另一个是内部函数 hello R export hello lt function internalFunctions hello internal 你好 内部 R hello internal
  • 缩放geom_密度以将geom_bar与y上的百分比相匹配

    因为我对数学感到困惑上次我尝试问这个问题 https stackoverflow com questions 32412805 ggplot2 histogram with density curve that sums to 1 这是另一
  • ggplot2以限制为中心的多边形世界地图给出了有趣的边缘

    使用下面的代码我生成了一张以华盛顿特区为中心的地图 解决方案基于科斯克的解决方案在这里 https stackoverflow com questions 10620862 use different center than the pri
  • 使用 sprintf 打印换行符 - 有光泽

    我试图在打印时进行换行 这是我的代码 temp lt LETTERS 1 11 print sprintf Rank s s n 1 11 temp output 1 Rank 1 A n Rank 2 B n Rank 3 C n Ran
  • 使用 alpha 通道叠加两个 ggplot2 stat_密度2d 图

    我想叠加两个ggplot2使用 alpha 通道进行绘图 结果图像显示两个数据集 这是我的测试数据 data read table text P1 1 0 4 nP2 0 0 2 nP3 2 1 8 nP4 2 2 6 nP5 0 5 2

随机推荐

  • 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