This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Preparing a .genome file for snpEff

Hello,

I am trying to follow the example code at this site (http://snpeff.sourceforge.net/protocol.html) where snpEFF and GATK are linked together:

java -Xmx4g -jar snpEff.jar \ -v \ -o gatk \ GRCh37.71 \ protocols/ex1.vcf \ > protocols/ex1.eff.gatk.vcf

I have a data.vcf, data.fasta, data.fasta.fai, and data.gff3 file. I created a data.genome file by taking the first two columns of the data.fasta.fai file. The resulting data.genome file looks like:

scaffold_0    5745343
scaffold_1    4980556
scaffold_10    3237655
scaffold_100    1257028
scaffold_1000    96926
scaffold_1001    104432
scaffold_1002    91331
scaffold_1003    92118
scaffold_1004    88640
scaffold_1005    92758

So, I then tried to run the command on my files:

java -Xmx4g -jar snpEff.jar \ -v \ -o gatk \ data \ data.vcf \ > data.eff.gatk.vcf

But this led to an error: java.lang.RuntimeException: Property: '/data.genome' not found

My question is: Why can it not find the data.genome file? I checked my pathways. Is my data.genome file in the correct format? Additionally, I also read that I may need a code name for my data.genome file, but I cannot figure out how to do this?

genomefile ngs snpeff

Hi,

If you are working from command line, try to use "/" instead of \

1 answer

You don't have to create a .genome file like that. Read this section. You need to edit your config file.

Can you please clarify? You link to SNPeff webpage but no documentation. I am running into the same issue. Except I am using a genome described in snpEff database.

I second this, I've gone through the documentation and cannot find anything on this.

I'm using a container which came with it's own config file and I was able to over-ride it in order to download with SnpEff like so:

rule snpeff_download:
    output:
        directory('resources/snpeff/WBcel235.86')
    log:
        'logs/snpeff/download/WBcel235.86.log'
    params:
        reference='WBcel235.86'
    resources:
        mem=1000,
        time=30
    container:
        'docker://resolwebio/snpeff:2.0.0'
    shell: """
    java -jar /opt/snpeff/snpeff/snpEff.jar download {params.reference} -dataDir /scratch/moldach/COOVAR/resources/snpeff
    """

However, got this error from the following:

if (config['ANNOT_TOOL']=='snpeff'):
        rule snpeff:
            input:
                    calls=lambda wildcards: getVCFs(wildcards.sample),
                    ref = os.path.join(dirs_dict['REF_DIR'],config['REF_GENOME']),
                    db='resources/snpeff/WBcel235.86'
            output:
                    calls=os.path.join(dirs_dict['ANNOT_DIR'],config['ANNOT_TOOL'],config['CALLING_TOOL'],config['ALIGN_TOOL'],config['SORT_TOOL'],config['MARKDUP_TOOL'],'{sample}.annotated.vcf'),
                    stats=os.path.join(dirs_dict['ANNOT_DIR'],config['ANNOT_TOOL'],config['CALLING_TOOL'],config['ALIGN_TOOL'],config['SORT_TOOL'],config['MARKDUP_TOOL'],'{sample}.html'),
                    csvstats=os.path.join(dirs_dict['ANNOT_DIR'],config['ANNOT_TOOL'],config['CALLING_TOOL'],config['ALIGN_TOOL'],config['SORT_TOOL'],config['MARKDUP_TOOL'],'{sample}.csv')
            log:
                    os.path.join(dirs_dict['LOG_DIR'],config['ANNOT_TOOL'],config['CALLING_TOOL'],config['ALIGN_TOOL'],config['SORT_TOOL'],config['MARKDUP_TOOL'],'{sample}.log')
            params:
                    sample='{sample}',
            resources:
                    mem=3000,
                    time=60
            container:
                    'docker://resolwebio/snpeff:2.0.0'
            shell: """
            java -Xmx4g -jar /opt/snpeff/snpeff/snpEff.jar -dataDir {input.db} {input.calls} > {output.calls}
            """

Log in to answer this question.