I'm running experiments on a model, with a workflow like this:
- I work in a model (a software in Python)
- I change some parameters and run an experiment
- Then, I will store the results of the experiment (as a pickle).
- Then, I will analyze the (pickled) results using another software (IPython Notebooks).
I'm using Git and Scientific Reproducibility as a guide , where the results of an experiment are stored in a table along the hash of the commit. I would like to store the results in a directory instead, naming the directories as hashes.
Thinking about version control, I would like to isolate the code
and analysis
. For example, a change of the color in a plot in a IPython notebook in analysis
shouldn't change anything in code
The approach I'm thinking:
A directory structure like this:
model
- code
- simulation_results
- a83bc4
- 23e900
- etc
- analysis
and different Git repositories for code
and analysis
, leaving simulation_results
out of Git.
Any comments? A better solution? Thanks.