Skip to content

Improved handling of intersecting groups in SVStratify #9185

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

mwalker174
Copy link
Collaborator

Changes the behavior of SVStratify when a variant belongs to more than one stratification group:

  • Changes the STRAT field to a list type so that multiple groups can be listed
  • Records belonging to multiple groups are no longer duplicated when writing to a single output file
  • Mutual exclusivity is only enforced when using --split-output
  • When using --split-output, all groups are listed in STRAT rather than only the one corresponding to the output file

Also adds tests and updates docs.

Copy link
Contributor

@epiercehoffman epiercehoffman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, one comment re: header metadata

if (writer == null) {
throw new GATKException("Writer not found for group: " + stratum.getName());
final List<String> stratumNames = new ArrayList<>(stratifications).stream().map(SVStratificationEngine.Stratum::getName).sorted().collect(Collectors.toUnmodifiableList());
final VariantContext outputVariant = builder.attribute(GATKSVVCFConstants.STRATUM_INFO_KEY, stratumNames).make();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like the VCF header line for STRAT still has count=1, should it now be unbounded?

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.

2 participants