For your problem, you might want to use saveRDS and readRDS instead of save and load. I would also use dir to get a list of files rather than paste.
Then your solution might look like: run <- function(filename) { df <- readRDS(filename); coef( lm(df[,1] ~ df[,2]) ) } results <- lapply( dir(pattern=glob2rx('d*.rds')), run) If this is disk-bound, using multiple threads probably won't help much. You'll have to try it out for yourself. -nfultz On Mon, Jun 17, 2013 at 04:07:50PM -0700, ivo welch wrote: > very simple question. I probably forgot the answer (early stage onset), > and I could not find it via google and r-help. > > I have a number of files, each containing one saved data frame. I want to > do the equivalent of > > d <- .GlobalEnv[[ load(file="dxxxx.Rdata") ] > > but inside a function, and I don't need the original name (dxxxx). in the > end, I want to do something like > > run <- function( i ) { > fname <- paste0( "d", i, ".Rdata") > stopifnot( length(fname)==1 ) > d <- .ThisEnv[[ load(file=fname) ]] > coef( lm(d[,1] ~ d[,2]) ) ## calculate two coefficients and return > them > } > > results <- mclapply( 1:10000, run ) > > stumped over something that should be easy...pointer appreciated. > > /iaw > ---- > Ivo Welch (ivo.we...@gmail.com) > > [[alternative HTML version deleted]] > > ______________________________________________ > 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.