This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Can someone help me with imputation of missing SNPs using beagle 4?

Hi, I am trying to impute missing SNPs using beagle4. However, I am getting the error message, Could you help please?

No genetic map is specified: using 1 cM = 1 Mb
Exception in thread "main" java.lang.IllegalArgumentException: java.lang.IllegalArgumentException: ERROR: missing REF or ALT allele at 5:35101444
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
    at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:593)
    at java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:677)
    at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:735)
    at java.util.stream.ReduceOps$ReduceOp.evaluateParallel(ReduceOps.java:714)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at vcf.VcfIt.fillEmissionBuffer(VcfIt.java:307)
    at vcf.VcfIt.next(VcfIt.java:363)
    at vcf.VcfIt.next(VcfIt.java:52)
    at vcf.IntervalVcfIt.readFirstRecord(IntervalVcfIt.java:99)
    at vcf.IntervalVcfIt.<init>(IntervalVcfIt.java:59)
    at main.Main.nonRefData(Main.java:261)
    at main.Main.main(Main.java:111)
Caused by: java.lang.IllegalArgumentException: ERROR: missing REF or ALT allele at 5:35101444
    at vcf.BasicMarker.checkAlleles(BasicMarker.java:130)
    at vcf.BasicMarker.extractAlleles(BasicMarker.java:312)
    at vcf.BasicMarker.<init>(BasicMarker.java:249)
    at vcf.VcfRecGTParser.<init>(VcfRecGTParser.java:70)
    at vcf.BitSetGT.<init>(BitSetGT.java:74)
    at vcf.VcfIt.lambda$static$6(VcfIt.java:90)
    at vcf.VcfIt.lambda$new$7(VcfIt.java:192)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:747)
    at java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:721)
    at java.util.stream.AbstractTask.compute(AbstractTask.java:316)
    at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
snp software error

Did you check the locus it mentions ( 5:35101444 ) to see if there's anything wrong in the data?

Please use the formatting bar (especially the code option) to present your post better. You can use backticks for inline code (`text` becomes text), or select a chunk of text and use the highlighted button to format it as a code block. I've done it for you this time.
code_formatting

3 answers

Beagle 4 has an issue if the ALT allele is not defined and instead if it is just represented by a "." when genotype is 0/0.

Workaround is to use Beagle 3 or exclude rows with MAF=0.

You can try the option: excludemarkers=C:\to .txt -file specifies a file containing markers (one marker per line) Mike

Here is the best solution:

bcftools view -i 'ALT !="-" | REF!="-"' All_samples_Exome.vcf.gz -Ov -o All_samples_Exome_clean.vcf

details:

How to do data cleaning for VCF genetic file

Hi,

How does this line do any sort of imputation? It only subsets a VCF file, which is not what OP asked for 3.2 years ago.

Given that your answer doesn't address OP's problem in the first place, how can it be the "best" solution?

Please invest a little more thought in your answers.

Log in to answer this question.