Well, I prefer Greg's approach, but if you want to avoid calls to $ or `[[` then you could do:
unlist(fits)[ rep(names(fits[[1]]) == 'iter', length(fits))] Cheers, Bert On Tue, Dec 27, 2022 at 9:46 AM Greg Snow <538...@gmail.com> wrote: > > Another option is the map family of functions in the purrr package > (yes, this depends on another package being loaded, which may affect > things if you are including this in your own package, creating a > dependency). > > In map and friends, if the "function" is a string or integer, then it > is taken as the piece to be extracted, so you should be able to do > something like: > > library(purrr) > map(fits, 'iter') > # or > map_int(fits, 'iter') > # or > map_dbl(fits, 'iter') > > which of the last 2 to use depends on how `iter` is stored. > > On Tue, Dec 27, 2022 at 10:16 AM Therneau, Terry M., Ph.D. via R-help > <r-help@r-project.org> wrote: > > > > I not uncommonly have the following paradym > > fits <- lapply(argument, function) > > > > resulting in a list of function results. Often, the outer call is to > > mclapply, and the > > function encodes some long calculation, e.g. multiple chains in an MCMC. > > Assume for illustration that each function returns a list with elements > > beta, loglik, iter. > > > > Then sapply(fits, function(x) x$iter) > > will give me a vector, with the number of iterations used by each instance. > > > > I've often been suspicious that there is some simple shorthand for the > > "grab all the > > elements named iter" that skips the explicit x$iter function. Am I indeed > > overlooking > > something? I don't expect a speed increase, just cleaner code. > > > > Terry T. > > > > -- > > Terry M Therneau, PhD > > Department of Quantitative Health Sciences > > Mayo Clinic > > thern...@mayo.edu > > > > "TERR-ree THUR-noh" > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > 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. > > > > -- > Gregory (Greg) L. Snow Ph.D. > 538...@gmail.com > > ______________________________________________ > 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. ______________________________________________ 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.