using ``<-'' in function argument
On 12/03/2010 06:54 AM, Berwin A Turlach wrote:
On Thu, 2 Dec 2010 23:34:02 -0500 David Winsemius<dwinsemius at comcast.net> wrote:
[...] Erik is telling you that your use of ncol<-4 got evaluated to 4 and that the name of the resulting object was ignored, howevert the value of the operation was passed on to matrix which used positional matching since "=" was not used.
Sounds like a fair summary of what Erik said, but it is subtly wrong. R has lazy evaluation of its arguments. There is nothing that forces the assignment to be evaluated and to pass the result into the function. On the contrary, the assignment takes place when the function evaluates the argument.
Let's say: as no argument name was given, the positional matching applied. And
evaluation took place when argument no. 2 was required.
Of course, you could give an argument name:
> matrix(ncol <- 4)
[,1]
[1,] 4
> matrix(nrow = ncol <- 4)
[,1]
[1,] NA
[2,] NA
[3,] NA
[4,] NA
Claudia
Claudia Beleites Dipartimento dei Materiali e delle Risorse Naturali Universit? degli Studi di Trieste Via Alfonso Valerio 6/a I-34127 Trieste phone: +39 0 40 5 58-37 68 email: cbeleites at units.it