Hello, When I use function `foo` with list elements (example 2), it defines a new object named `b[[1]]`, which is not what I want. How can I change the function code to show the desired behaviour for all data structures passed to the function? Or is there a more appropriate way to sort of "pass by references" in a function?
Thanks Sören <src> bar <- function(x) { return( x + 3 ) } foo <- function(x, value) { nm <- deparse(substitute(x)) tmp <- bar( value ) assign(nm, tmp, parent.frame()) } # 1) a <- NA foo(a, 4) a # 7, fine :-) # 2) b <- list(NA, NA) foo(b[[1]], 4) # the first list item should be 7 b # wanted 7 but still list with two NAs :-( </src> ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.