Skip to content

SNP Detection - Cannot execute SNP detection if genome contains other base letters than ATCG #10

Open
@pblumenkamp

Description

@pblumenkamp

If the genome contains other IUPAC base letters than ATCG, the SNP detection throws the following exception:

java.lang.AssertionError: x: This is not a valid essential amino acid!
	at de.cebitec.common.sequencetools.geneticcode.AminoAcidProperties.getPropertyForAA(AminoAcidProperties.java:86)
	at de.cebitec.readxplorer.tools.snpdetection.SNPDetectionResultPanel.addResult(SNPDetectionResultPanel.java:383)
	at de.cebitec.readxplorer.tools.snpdetection.OpenSnpDetectionAction$1.run(OpenSnpDetectionAction.java:266)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
[catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

getTranslation2(String codon) in package de.cebitec.common.sequencetools.geneticcode creates this x:

private Character getTranslation2(String codon) {
        if (translationMap.containsKey(codon)) {
            return translationMap.get(codon);
        } else {
            return 'x';
        }
    }

This function is used in:

The following line does not allow 'x' as a valid amino acid:

aminosRef += aminoAcid + " (" + AminoAcidProperties.getPropertyForAA( aminoAcid ) + ")\n";

A genome containing other bases than ATCG:
GCF_000007445.1_ASM744v1_genomic.fna.zip
GCF_000007445.1_ASM744v1_genomic.gff.zip

A mapping dataset:
WT_1.bam.zip

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions