Skip to content

Results & Reports

Stephan Reichl edited this page Sep 12, 2024 · 5 revisions

Finally, you can inspect the results directly and/or create a Snakemake report. In the following, {project} refers to a dataset and its potential subsets/analyses that are analyzed by a {module}.

Results

Next to the expected {module} outputs (i.e., results), a complete conda export of the used software as .yaml files (environments) and copies of all provided configuration and annotation files (configurations), are provided within the {project} {result_directory}.

{result_directory}/ (e.g., myProject/)

  • {module}/ contains all result files with subfolders for each subset/analysis (e.g., unsupervised_analysis/).
  • {module}/envs/ (e.g., unsupervised_analysis/envs/sklearn.yaml) contains complete exports of all used conda environments, including all software, their version and build information.
  • {module}/configs/ (e.g., unsupervised_analysis/configs/myProject_config.yaml) contains copies of all used configuration and annotation files.

Note

This ensures that the {module} output is self-contained regarding results and documentation to ensure reproducibility. It enables running many experiments with different configurations, annotations, or even software versions to determine the best course of action.

It is required to make this part of the module by including a separate Snakemake rule to export environment specifications, configuration, and annotation files.

Report

The files contained in the report are most of the time a subset of all results focusing on visualizations.

# this can take a few minutes, depending on the size and number of files in the results
snakemake --report /absolute/path/to/report.zip

The command creates a self-contained HTML-based report in a ZIP archive with the following sections:

  • GENERAL (automatically filled by Snakemake)
    • Workflow: An interactive rulegraph recapitulating individual steps, used software and concrete code of the {module}.
    • Statistics: Duration and timing of individual steps.
    • About: Information on the "Embedded Packages" used by the report.
  • RESULT (module-specific result section)
    • Configuration/{project}_{module}/ (e.g., Configuration/myProject_unsupervised_analysis/myProject_config.yaml)
    • Software/{project}_{module}/ (e.g., Software/myProject_unsupervised_analysis/sklearn.yaml)
    • {project}_{module}: One top-level category, and many subcategories for subsets/analyses containing results of all respective analysis steps (e.g., myProject_unsupervised_analysis).

Important

Both, the {project} result-directory and the report, deliberately follow the same structure for every module to enable the (repetitive) usage of different modules within one project with multiple data sets without interference (see the Module usage in Projects wiki page for details).