LQF module
- class QualParams(*, min_mapping_quality: ~typing.Annotated[int, ~pydantic.functional_validators.AfterValidator(func=~hairpin2.process_wrappers.LQF.QualParams.<lambda>)], min_avg_clip_quality: ~typing.Annotated[int, ~pydantic.functional_validators.AfterValidator(func=~hairpin2.process_wrappers.LQF.QualParams.<lambda>)], min_base_quality: ~typing.Annotated[int, ~pydantic.functional_validators.AfterValidator(func=~hairpin2.process_wrappers.LQF.QualParams.<lambda>)])[source]
Bases:
FixedParams
- min_mapping_quality: <lambda>)]
- min_avg_clip_quality: <lambda>)]
- min_base_quality: <lambda>)]
- model_config: ConfigDict = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True, 'strict': True}
parent dataclass to be be inherited from to store specific fixed parameters for a particular subclass of FilterTester, or in other words for a particular filtering test. Using subclasses of this class for the fixed parameters provides type-safety and a consistent interface for implementing filters
- tag_lq(run_params: RunParamsShared, params: QualParams)[source]
- class TaggerLowQual(engine_fixed_params: FixedParams | None, require_marks: Sequence[str], exclude_marks: Sequence[str])[source]
Bases:
ReadAwareProcess
- AddsMarks: ClassVar[set[str] | None] = {Tags.LOW_QUAL_TAG}
- EngineFactory() ProcessEngineProtocol[RunParams_T, None]
- FixedParamClass
alias of
QualParams
- ProcessNamespace: ClassVar[str | None] = 'mark-low-qual'
- ProcessType: ClassVar[ProcessKindEnum | None] = <class 'hairpin2.infrastructure.process_engines.ReadTaggerEngine'>
- class ResultLQF(variant_flagged: TestOutcomes, info_flag: enum.Flag | None, reads_seen: int, loss_ratio: float)[source]
Bases:
FlagResult
- loss_ratio: float
- getinfo(alt: str) str [source]
Return basic filter info in a string formatted for use in the VCF INFO field - “<flag>|<code>”.
Each filter must return INFO as it should be formatted for the VCF INFO field, or None if not applicable. Subclasses must override this method to return more specific info.
- FlagName: ClassVar[str] = 'LQF'
- InfoFlagsAllSet: ClassVar[Flag | None] = 7
- class FixedParamsLQF(*, read_loss_threshold: ~typing.Annotated[float, ~pydantic.functional_validators.AfterValidator(func=~hairpin2.process_wrappers.LQF.FixedParamsLQF.<lambda>)], min_pass_reads: ~typing.Annotated[int, ~pydantic.functional_validators.AfterValidator(func=~hairpin2.process_wrappers.LQF.FixedParamsLQF.<lambda>)], nsamples_threshold: int)[source]
Bases:
FixedParams
read_loss_threshold - percent threshold of N lq reads compared to N input reads for a given variant and sample, above which we flag LQF min_pass_reads - the absolute minimum number of reads required for a variant not to be flagged LQF
- read_loss_threshold: <lambda>)]
- min_pass_reads: <lambda>)]
- nsamples_threshold: int
- model_config: ConfigDict = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True, 'strict': True}
parent dataclass to be be inherited from to store specific fixed parameters for a particular subclass of FilterTester, or in other words for a particular filtering test. Using subclasses of this class for the fixed parameters provides type-safety and a consistent interface for implementing filters
- test_variant_LQF(run_params: RunParamsShared, fixed_params: FixedParamsLQF)[source]
- class FlaggerLQF(engine_fixed_params: FixedParams | None, require_marks: Sequence[str], exclude_marks: Sequence[str])[source]
Bases:
ReadAwareProcess
- AddsMarks: ClassVar[set[str] | None] = None
- EngineFactory() ProcessEngineProtocol[RunParams, FlagResult]
- FixedParamClass
alias of
FixedParamsLQF
- ProcessNamespace: ClassVar[str | None] = 'LQF'
- ProcessType: ClassVar[ProcessKindEnum | None] = <class 'hairpin2.infrastructure.process_engines.VariantFlaggerEngine'>