On 12/11/2008 7:59 AM, David Croll wrote:

Hello dear R people!


Several times it occurred to me that a function that uses a variable name as a 
parameter would be helpful, but I did not find out how to write such a 
function. I have experience in several programming language, but I did not come 
across a helpful trick...

What I want to have is...

a <- 12 # starting value

add <- function(variable,increment) {

variable <- variable + increment

}

# by typing a and 25 for example, you specify that 25 will be added to the 
variable a...

add(a,25)

# the new a equals 12 + 25 = 37

Thanks for all the help – I'll try to give my advice when I get across a 
problem I can solve!

That's not a good idea: it looks as though you're trying to fake "call by reference" in a call by value language. R is flexible enough to do it (use substitute() to change the arg into a string, get() to get the old value, assign() to put it back), but the behaviour will be really weird, and you'll probably run into problems later. R is not C.

Duncan Murdoch

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to