Suppose we have a start value S <- 10
and two vectors, i.e.
x <- c(0,0,1,1,1,0,0,1,0,0)
y <- c(3,1,1,2,1,2,2,1,1,2)
I have an iterative problem:
Starting at index 1: Whenever there is a 1 in vector x the value of S should be decreased by the value (with same index) in y, otherwise S stays constant - the result should be
S = (10,10,9,7,6,6,6,5,5,5)
I have written a rather slow for-loop to solve this problem, but since my vectors are very large: Is there a fast and easy way to solve this problem in R?
Thank you for any answers!
Achim
question from:
https://stackoverflow.com/questions/66060372/fast-iterative-calculation-in-a-vector 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…