Project-oriented workflow; setwd(), rm(list = ls()) and computer fires

My team's often in a situation where two projects or more rely on similar data. I'm curious if anyone has opinions on the most sane way to do this, especially where the data for the project should live. We happen to extract subsets from internal databases for some context.

Do you favour subdirectories for each "sub project"? Does that get confusing?

Or absolute paths to a dedicated central folder to get the data? That seems like it's out of here::here's reach. Would this be a reason to use set_wd() if you have some project specific prep to do? Or is a there package in the making to extend here::here's reach?

Or finally is it best to separate folders entirely for each project each with its own copy of the data extract? That might help keep data stable for each project, but I wonder if it threatens having a single source of truth in projects dependent on it.

1 Like