[R] Passing lists between functions

jim holtman jholtman at gmail.com
Mon Nov 26 03:02:49 CET 2012


Just reference the objects in the list:

do_something<-function(L){

lst$a+lst$b+lst$df+lst$g
}
do_something(lst)


On Sun, Nov 25, 2012 at 8:24 PM, Ally <a.rushworth at stats.gla.ac.uk> wrote:
> I'd like to pass a list object created by one function as an argument of
> another function.  once inside the second function, I'd like to break the
> list up to it's individual elements, each then identifiable by the 'names'
> of the list.
>
> The list looks something like
>
> lst<-list(a=1, b=2, df=5, g=7)
>
> then inside the function I've been writing a sequence of statements that
> extract the objects within lst like
>
> do_something<-function(L){
> a<-lst$a
> b<-lst$b
> df<-lst$df
> g<-lst$g
> a+b+df+g
> }
> do_something(lst)
>
> My question is, is it possible to avoid the above sequence of statements,
> and achieve the same thing with a single line of code?  Perhaps this would
> be bad programming practise, as you can't 'see' where objects in the
> function are coming from?
>
> Thanks,
>
>  alastair
>
>
>
>
>
>
>
> --
> View this message in context: http://r.789695.n4.nabble.com/Passing-lists-between-functions-tp4650792.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at 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.



-- 
Jim Holtman
Data Munger Guru

What is the problem that you are trying to solve?
Tell me what you want to do, not how you want to do it.




More information about the R-help mailing list