ccagc / QDNAseq

QDNAseq package for Bioconductor
47 stars 27 forks source link

Export calls in vcf format #47

Closed ctrnsntx closed 3 years ago

ctrnsntx commented 7 years ago

How could I export a list of calls (gains/losses) obtained from the 'callBins' function into a vcf format?

HenrikBengtsson commented 3 years ago

Better late than never. Gains and losses should be presented as DUP and DEL in the ALT field of the exported VCF file when using exportBins(calls, ..., format = "vcf") as in:

library(QDNAseq)
data(LGG150)
data <- LGG150
data <- correctBins(data)
fit <- segmentBins(data)
fit <- callBins(fit)
file <- "LGG150.vcf"
exportBins(fit, format = "vcf", file = file)
$ cat LGG150.vcf
##fileformat=VCFv4.2
##source=QDNAseq-1.29.2.9000
##REF=<ID=DIP,Description="CNV call">
##ALT=<ID=DEL,Description="Deletion">
##ALT=<ID=DUP,Description="Duplication">
##FILTER=<ID=LOWQ,Description="Filtered due to call in low quality region">
##INFO=<ID=SVTYPE,Number=1,Type=String,Description="Type of variant: DEL,DUP,INS">
##INFO=<ID=SVLEN,Number=1,Type=Integer,Description="Length of variant">
##INFO=<ID=BINS,Number=1,Type=Integer,Description="Number of bins in call">
##INFO=<ID=SCORE,Number=1,Type=Integer,Description="Score of calling algorithm">
##INFO=<ID=LOG2CNT,Number=1,Type=Float,Description="Log 2 count">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
#CHROM  POS ID  REF ALT QUAL    FILTER  INFO    FORMAT  LGG150
7   1   .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=61650000;SVLEN=61650000;BINS=506;SCORE=-1;LOG2CNT=-5.13  GT  0/1
7   61650001    .   <DIP>   <DUP>   1000    PASS    SVTYPE=DUP;END=61980000;SVLEN=330000;BINS=16;SCORE=1;LOG2CNT=1.49   GT  0/1
7   62760001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=102330000;SVLEN=39570000;BINS=2633;SCORE=-1;LOG2CNT=-817.65  GT  0/1
7   140190001   .   <DIP>   <DUP>   1000    PASS    SVTYPE=DUP;END=140235000;SVLEN=45000;BINS=3;SCORE=1;LOG2CNT=4.64    GT  0/1
7   143220001   .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=153855000;SVLEN=10635000;BINS=77;SCORE=-1;LOG2CNT=-633.38    GT  0/1
8   1   .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=7020000;SVLEN=7020000;BINS=468;SCORE=-1;LOG2CNT=-919.72  GT  0/1
8   7020001 .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=8055000;SVLEN=1035000;BINS=67;SCORE=-2;LOG2CNT=-656.5    GT  1/1
8   11910001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=145500000;SVLEN=133590000;BINS=49;SCORE=-1;LOG2CNT=-634.48   GT  0/1
9   1   .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=38835000;SVLEN=38835000;BINS=2589;SCORE=-1;LOG2CNT=-340.76   GT  0/1
9   38835001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=68175000;SVLEN=29340000;BINS=654;SCORE=-2;LOG2CNT=-782.82    GT  1/1
9   68175001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=69015000;SVLEN=840000;BINS=38;SCORE=-1;LOG2CNT=-187.84   GT  0/1
9   69015001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=70980000;SVLEN=1965000;BINS=114;SCORE=-2;LOG2CNT=-708.04 GT  1/1
9   70980001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=141165000;SVLEN=70185000;BINS=4651;SCORE=-1;LOG2CNT=-1.18    GT  0/1
10  60001   .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=46905000;SVLEN=46845000;BINS=2902;SCORE=-1;LOG2CNT=-1.39 GT  0/1
10  46905001    .   <DIP>   <DUP>   1000    PASS    SVTYPE=DUP;END=47160000;SVLEN=255000;BINS=17;SCORE=1;LOG2CNT=0.41   GT  0/1
10  47160001    .   <DIP>   <DEL>   1000    PASS    SVTYPE=DEL;END=135525000;SVLEN=88365000;BINS=5708;SCORE=-1;LOG2CNT=-806.97  GT  0/1