【发布时间】:2014-09-13 04:33:44
【问题描述】:
我想在较长的向量的一部分中找到最大的元素。我还想对这个较大向量的多个“片段”执行此计算。以下代码产生了我正在寻找的结果,但使用循环似乎效率低下。建议?
注意:我并不特别局限于使用向量数据结构来解决这个问题。
test.vec = as.vector(c(1,2,4,3,2,3,4,5,4,3,4,5))
output.vec = vector(mode = 'numeric', length = length(test.vec))
for(i in 1:length(test.vec)){
output.vec[i] = max(test.vec[1:i])
}
output.vec = 1, 2, 4, 4, 4, 4, 4, 5, 5 ,5 ,5 ,5 #Result of the loop
【问题讨论】: