作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图根据向量中焦点值之前或之后的一个元素值来识别不匹配的值。有没有想过怎么做?
比方说,我有一个向量:x<-c(1,1,2,1,3,3)
.如 element[i]
与项目 i
之前或之后的元素匹配( element[i-1]
和 element[i+1]
)。如果有匹配项 element[i]
应等于"is",否则应等于“否”。x<-c(1,1,2,1,3,3)
的预期输出应该是 c("yes","yes","no","no","yes","yes")
.
最佳答案
使用 rle()
以识别相等值的运行。 lengths == 1
意味着在当前值之前或之后没有相等的值。
with(rle(x), rep(ifelse(lengths == 1, "no", "yes"), lengths))
# [1] "yes" "yes" "no" "no" "yes" "yes"
with(rle(x), rep(lengths != 1, lengths))
# [1] TRUE TRUE FALSE FALSE TRUE TRUE
关于r - 如何将向量中的值与 r 中的前后值进行匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54132639/
我是一名优秀的程序员,十分优秀!