I would like to create a vector of functions using a two agruments function 'func', for instance this one:
func = function(number, coefficient) {
return(coefficient*number)
}
here is how I create the vector of functions:
vector_of_functions = NULL
for (i in 1:4) {
vector_of_functions = c(vector_of_functions,
function(number) func(number=number, coefficient=i))
}
My issue is that all functions that compose my vector are the same, even if they have been created using different i
through the loop. It seams that they are evaluated using the last value of i
(which is a global variable here).
Does anybody have an idea?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…