是否有可能避免使用待办事项和while循环以计算矢量的元素的总和,直到最后阳性元素或最后一个负性元件的外观。
Answer 1:
尝试以下方法:
x <- 5:-5
# sum until last positive:
sum(x[1:max(which(x > 0))])
x <- -5:5
# sum until last negative:
sum(x[1:max(which(x < 0))])
说明:
Which(x > 0)
给出索引数的向量在其中x大于0。利用这个最大给出最后一个这样的索引。 然后,剩下的工作就是从1×总结到这个元素。 我希望这有帮助。
文章来源: Sum of vector elements