Re: [R] is there a way to recursilvely lapply
This will recursively lapply and may or may not be what you are looking for: rapply(x, sum) On Thu, Dec 11, 2008 at 2:59 PM, Whit Armstrong armstrong.w...@gmail.com wrote: for a simple example: x - list() x[[a]] - list(a=c(1,2,3),b=c(3,4,5)) x[[b]] - list(a=c(6,7,8),b=c(9,10,11)) lapply(x,sum) this fails w/ Error in FUN(X[[1L]], ...) : invalid 'type' (list) of argument Just wondering if I have overlooked something obvious. one can also do: lapply(x,lapply,sum) but that assumes that you already know how many levels you have, and that all the levels are consistent. -Whit __ 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. __ 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.
Re: [R] is there a way to recursilvely lapply
On Thu, 11 Dec 2008, Whit Armstrong wrote: for a simple example: x - list() x[[a]] - list(a=c(1,2,3),b=c(3,4,5)) x[[b]] - list(a=c(6,7,8),b=c(9,10,11)) lapply(x,sum) this fails w/ Error in FUN(X[[1L]], ...) : invalid 'type' (list) of argument Just wondering if I have overlooked something obvious. rapply? Which is linked from ?lapply (I just checked). Perhaps rapply(x, sum) a.a a.b b.a b.b 6 12 21 30 or rapply(x, sum, how=list) $a $a$a [1] 6 . one can also do: lapply(x,lapply,sum) but that assumes that you already know how many levels you have, and that all the levels are consistent. -Whit __ 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. -- Brian D. Ripley, rip...@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UKFax: +44 1865 272595 __ 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.
Re: [R] is there a way to recursilvely lapply
Thanks, Gabor and Prof. Ripley. Sorry for the oversight. I grepped the lapply help for recursive prior to sending my question. why does it appear as *r*ecursive in the help file? or is that just a formating problem on my machine? -Whit On Thu, Dec 11, 2008 at 3:13 PM, Prof Brian Ripley rip...@stats.ox.ac.uk wrote: On Thu, 11 Dec 2008, Whit Armstrong wrote: for a simple example: x - list() x[[a]] - list(a=c(1,2,3),b=c(3,4,5)) x[[b]] - list(a=c(6,7,8),b=c(9,10,11)) lapply(x,sum) this fails w/ Error in FUN(X[[1L]], ...) : invalid 'type' (list) of argument Just wondering if I have overlooked something obvious. rapply? Which is linked from ?lapply (I just checked). Perhaps rapply(x, sum) a.a a.b b.a b.b 6 12 21 30 or rapply(x, sum, how=list) $a $a$a [1] 6 . one can also do: lapply(x,lapply,sum) but that assumes that you already know how many levels you have, and that all the levels are consistent. -Whit __ 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. -- Brian D. Ripley, rip...@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UKFax: +44 1865 272595 __ 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.
Re: [R] is there a way to recursilvely lapply
On Thu, 11 Dec 2008, Whit Armstrong wrote: Thanks, Gabor and Prof. Ripley. Sorry for the oversight. I grepped the lapply help for recursive prior to sending my question. why does it appear as *r*ecursive in the help file? or is that just a formating problem on my machine? It is marked as bold: I presume you are reading text help? -Whit On Thu, Dec 11, 2008 at 3:13 PM, Prof Brian Ripley rip...@stats.ox.ac.uk wrote: On Thu, 11 Dec 2008, Whit Armstrong wrote: for a simple example: x - list() x[[a]] - list(a=c(1,2,3),b=c(3,4,5)) x[[b]] - list(a=c(6,7,8),b=c(9,10,11)) lapply(x,sum) this fails w/ Error in FUN(X[[1L]], ...) : invalid 'type' (list) of argument Just wondering if I have overlooked something obvious. rapply? Which is linked from ?lapply (I just checked). Perhaps rapply(x, sum) a.a a.b b.a b.b 6 12 21 30 or rapply(x, sum, how=list) $a $a$a [1] 6 . one can also do: lapply(x,lapply,sum) but that assumes that you already know how many levels you have, and that all the levels are consistent. -Whit __ 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. -- Brian D. Ripley, rip...@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UKFax: +44 1865 272595 -- Brian D. Ripley, rip...@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UKFax: +44 1865 272595 __ 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.
Re: [R] is there a way to recursilvely lapply
yes, that is correct. I was looking in text mode. ok, thanks for your help. -Whit On Thu, Dec 11, 2008 at 4:02 PM, Prof Brian Ripley rip...@stats.ox.ac.uk wrote: On Thu, 11 Dec 2008, Whit Armstrong wrote: Thanks, Gabor and Prof. Ripley. Sorry for the oversight. I grepped the lapply help for recursive prior to sending my question. why does it appear as *r*ecursive in the help file? or is that just a formating problem on my machine? It is marked as bold: I presume you are reading text help? -Whit On Thu, Dec 11, 2008 at 3:13 PM, Prof Brian Ripley rip...@stats.ox.ac.uk wrote: On Thu, 11 Dec 2008, Whit Armstrong wrote: for a simple example: x - list() x[[a]] - list(a=c(1,2,3),b=c(3,4,5)) x[[b]] - list(a=c(6,7,8),b=c(9,10,11)) lapply(x,sum) this fails w/ Error in FUN(X[[1L]], ...) : invalid 'type' (list) of argument Just wondering if I have overlooked something obvious. rapply? Which is linked from ?lapply (I just checked). Perhaps rapply(x, sum) a.a a.b b.a b.b 6 12 21 30 or rapply(x, sum, how=list) $a $a$a [1] 6 . one can also do: lapply(x,lapply,sum) but that assumes that you already know how many levels you have, and that all the levels are consistent. -Whit __ 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. -- Brian D. Ripley, rip...@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UKFax: +44 1865 272595 -- Brian D. Ripley, rip...@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UKFax: +44 1865 272595 __ 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.