Skip to content

Configuration: Samples Sheet validation#243

Merged
taimontgomery merged 5 commits intomasterfrom
issue-242
Oct 22, 2022
Merged

Configuration: Samples Sheet validation#243
taimontgomery merged 5 commits intomasterfrom
issue-242

Conversation

@AlexTate
Copy link
Member

@AlexTate AlexTate commented Oct 21, 2022

A new class, SamplesSheet, has been added to configuration.py. It acts as a basic API to the Configuration class and validates the contents of the user's Samples Sheet. If the following requirements are not met, it is treated as a hard error and pipeline execution halts at startup:

  • Only one group is designated the control group for tiny-deseq.r compatibility (otherwise, the error message suggests that the user remove all control designations so that every possible comparison is made instead)
  • Each group-replicate combination cannot be listed more than once
  • Fastq files cannot be listed more than once
  • Fastq files exist (relative paths are resolved prior to checking)
  • Fastq files have a .fastq or .gz extension

If the following requirements are not met, a warning is printed and pipeline execution continues:

  • The experiment design has at least one degree of freedom for compatibility with DESeq2. Otherwise, the step is automatically skipped.

Closes #242

…t. This code is substantially cleaner and validation is more thorough. Super satisfying.
…it can also be used in unit_tests_configuration.py. I've also changed column names in the tests so that they match the internal shortnames that we use. This makes things a little more succinct and I think it makes more sense. Now, the same identifier is used to refer to a column both in is pre- and post- parsed form.
@AlexTate
Copy link
Member Author

This update should also be included in the upcoming release; please merge prior to PR #241

@taimontgomery
Copy link
Collaborator

Tested successfully with ram1 data.

@taimontgomery taimontgomery merged commit 1588297 into master Oct 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Configuration: check for experiments that include more than one control condition

2 participants