Effect strings in CSV: SpliceOutcomeSet hides alternatives, REF==ALT records become Silent p.335=, 1-bp deletions use a range
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- bioinformatics
Research direction
Reproduce the examples with EffectCollection.to_dataframe(), effects.top_priority_effect_per_variant(), varcode --one-per-variant, load_vcf, and varcode-genes using the commands and VCF records in the issue. Trace how SpliceOutcomeSet, no-op variants, single-nucleotide deletions, and structural variants are represented before export; done means each listed CSV or HGVS behavior matches the stated expected result.
Written by the indexing model from the issue text.
Description
Effect strings in EffectCollection.to_dataframe() / CSV (8.0.0): SpliceOutcomeSet hides its alternatives, REF==ALT records become "Silent", and single-base deletions use a range.
From varcode --vcf tests/data/somatic_hg19_14muts.vcf --output-csv out.csv on main at 50eafde:
-
SpliceOutcomeSet exports only its first candidate, and top-priority selection drops the rest.
chr1 g.53513530A>C,...,ENST00000371514,SCP2-001,SpliceOutcomeSet,splice-set:normal-splicing (p.D490A)The effect has four candidates:
normal-splicing (p.D490A),exon-skip ENSE00003489518 (p.D490fs),cryptic-donor (predicted)andintron-retention (donor side, predicted). The CSV shows only the first.effect_typeis the container class name, not a consequence.effects.top_priority_effect_per_variant()(andvarcode --one-per-variant) turns the same transcript intoSubstitution p.D490A, so the possible frameshift vanishes. Nine rows in this 14-variant file are SpliceOutcomeSet. Related to #421 and #423. -
A REF==ALT record is annotated as Silent with a malformed protein change. The VCF line
chr11 118244286 . G Gproduces:chr11 g.118244286,11,118244286,,,False,False,False,ENSG00000110344,UBE4A,ENST00000252108,UBE4A-001,Silent,p.335=The HGVS strings
g.118244286andp.335=have no alleles and no residue.varcode-geneslists the same record withref=G, alt=G. Expected:load_vcfdrops or warns about no-op records, or the effect is reported asNoChange, notSilent. -
Single-nucleotide deletions use a one-base range.
--variant 17 36731197 C .giveschr17 g.36731197_36731197delC. HGVS for a one-nucleotide deletion isg.36731197del(ordelC), with no_range. -
Structural variants carry placeholder alleles in the dataframe. See #417.
to_dataframe()no longer crashes, but SV rows still showalt=Aandis_snv=True.
- Dominant language
- Python
- Stars
- 87
- Forks
- 28
- Avg merge
- 3h 27m
- Merged PRs (30d)
- 27
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openvax/varcode
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
-
Difficulty 5/5 Over a week Newbie friendliness 42/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
bancolombia/sentinel#23 ·
-
test md OpenCI
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
bug client
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100