【发布时间】:2021-12-21 12:59:31
【问题描述】:
基本上我想查看一系列重复数字的开始位置。例如,如果我有:
data_frame <- c(1, 7, 8, 4, 3, 7, 8, 8, 9, 3)
我想找到数字连续 3 次大于 7 的位置,我希望函数返回 5。
end_test_machine <- function(distribution_input) {
for (i in 1:length(distribution_input)){
if (distribution_input[i] > 7) {
if(distribution_input[i+1] < 7) {
end_test_position <- i
next
}
} # End If Statement
else {
next
}
} # End For Loop
return(end_test_position)
}
当我使用上面的代码块时,我总是得到错误信息:
Error in if (distribution_input[i+1] > 7) { :
missing value where TRUE/FALSE needed
如果三个连续值的条件为真,我如何将数据输入中的下一个元素与当前位置进行比较并返回该位置?
【问题讨论】: