r - 确定 TRUE 和 FALSE 序列中最后 TRUE 的位置

标签 r vector logic cumsum

我有一个 TRUE 和 FALSE 向量:

x <- c(F,F,F,T,T,T,F,F,F,T,T,T,F,T,T)

我想优雅地(并且在基础上)在最后一个 TRUE 变为 FALSE 之前确定它的位置。

但是,以下工作似乎可以简化:
c((x[-1] != x[-length(x)]),T) & x
> FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE  TRUE

输入输出:
enter image description here

最佳答案

大家可以看看哪里x大于移位 x0附加。

x>c(x[-1],0)
# [1] FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE  TRUE

关于r - 确定 TRUE 和 FALSE 序列中最后 TRUE 的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56814732/

相关文章:

r - R 和 MATLAB 上的多维数组的算术平均值 : drastic difference of performances

r - RStudio 和 R 中的运算符 "[<-"

c++ - 复制赋值函数如何访问另一个对象的私有(private)成员(Stroustrup 原则与实践书)?

c++ - 由于 vector 中的值作为函数参数,程序在编译时失败

javascript - 将对象数组缩减为嵌套数组

r - 基于另一个数据帧规范化数据帧

r - ggplot2 中有没有内置的方法可以进行对数色标?

c++ - 简化对 vector 的查找操作

perl - 意外的逻辑错误

php - 我怎样才能只为第一个函数调用做一些事情?