Re: [Rd] variable problem

From: Vladimir Dergachev <vdergachev_at_rcgardis.com>
Date: Tue 07 Nov 2006 - 20:45:04 GMT

On Tuesday 07 November 2006 3:28 pm, Tom McCallum wrote:
> Hi everyone,

Hi Tom,

    Would this snippet work:

    for(i in 1:length(mylist))do.call(f, mylist[i])

    On the other hand it is not easy to see why you would want to call the same function with differently named arguments - perhaps what you are really trying to do has a different (and better) solution ?

                       best

                          Vladimir Dergachev

>
> I am not sure this is possible so I would be interested in your
> responses. Say I have a variable 'v' with the string "myargument" in and
> I have a function 'f' that takes this argument as follows;
>
> f <- function( myargument=5 ) {
> ... does something...
> }
>
> Is there anyway I can say something like;
>
> f( v=10 ) such that it will be evaluated as f( myargument=10 ).
>
> I presume there may be some use eval and substitute but if someone could
> point me in the right direction then that would be great.
>
> The end idea is to have a list of m items, declared somewhere else, which
> can be evaluated as particular arguments named after their list names
>
> e.g
>
> mylist <- list( "a"=1, "b"=2, "c"=3 )
>
> which can be passed to a function taking arguments a,b, or c and it will
> be able to evaluate them accordingly :
>
> long hand this would evaluate to something like
> f( a=mylist[["a"]] );
> f( b=mylist[["b"]] );
> f( c=mylist[["c"]] );
>
> but I would have actually rewritten something like
> for ( myvar in names( mylist ) ) {
> f( some_clever_substitution_to_act_as_argument(myvar) = mylist[[ myvar
> ]] );
> }
>
> I hope I have explained myself clearly enough, if not please say so and I
> will try and give a better example.
>
> Many thanks for your help
>
> Tom



R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Wed Nov 08 07:49:22 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Tue 07 Nov 2006 - 21:30:36 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.