On Fri, 24 Dec 2021, Jeff Newmiller wrote:
The qsave/qread functions from the qs package are functionally interchangeable with saveRDS/readRDS, but faster and create smaller files. A simpleif ( file.exists( "obj1.qs" ) ) { obj1 <- qread( "onj1.qs" ) } else { obj1 <- compute_obj1() qsave( obj1, "obj1.qs" ) } can be used
Jeff, I understand that with qs each R object needs to be in a separate .qs file rather than having all of them in a single file such as .RData or .rda.
... but there are various caching packages [1] for ad-hoc use that attempt to determine when a computation is out of date better than the existence of a file (that you have to manually delete if you want to recompute) but they may either fail to notice relevant changes or recompute unnecessarily.
I'll look closely at caching-in-R.
I have in the last couple of months found that the targets package [2] seems to excel at balancing these concerns and regularly use it now for large or complicated analyses.
I read the targets users manual and vignettes and found that it's much too complex for my simple needs. I consider my projects to be subjectively small and uncomplicated. Each of my projects are unique and one-off. Thanks and happy holiday, Rich ______________________________________________ [email protected] 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.

