R: Convert genotype likelihoods to genotype probabilities
GLtoGP
R Documentation
Convert genotype likelihoods to genotype probabilities
Description
Convert an array of genotype likelihoods to
posterior genotype probabilities.
Usage
GLtoGP(gl)
PLtoGP(pl)
Arguments
gl
Array of genotype likelihoods (log10-scaled). The format can be a matrix
of lists, or a three-dimensional array in which the third dimension
corresponds to the probabilities for each genotype.
pl
Array of genotype likelihoods (phred-scaled, i.e. -10*log10). The format can be a matrix
of lists, or a three-dimensional array in which the third dimension
corresponds to the probabilities for each genotype.
Details
GLtoGP computes the probability of each genotype as 10^x / sum(10^x).
PLtoGP first divides by -10 and then proceeds as in GLtoGP.
Value
An array of posterior genotype probabilities, in the same format as
the input (matrix of lists or 3D array).
Author(s)
Stephanie Gogarten <sdmorris@u.washington.edu>
See Also
readVcf,
genotypeToSnpMatrix
Examples
## Read a vcf file with a "GL" field.
vcfFile <- system.file("extdata", "gl_chr1.vcf", package="VariantAnnotation")
vcf <- readVcf(vcfFile, "hg19")
## extract genotype likelihoods as a matrix of lists
gl <- geno(vcf)$GL
class(gl)
mode(gl)
# convert to posterior probabilities
gp <- GLtoGP(gl)
## Read a vcf file with a "PL" field.
vcfFile <- system.file("extdata", "hapmap_exome_chr22.vcf.gz",
package="VariantAnnotation")
vcf <- readVcf(vcfFile, "hg19")
## extract genotype likelihoods as a matrix of lists
pl <- geno(vcf)$PL
class(pl)
mode(pl)
# convert to posterior probabilities
gp <- PLtoGP(pl)
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(VariantAnnotation)
Loading required package: BiocGenerics
Loading required package: parallel
Attaching package: 'BiocGenerics'
The following objects are masked from 'package:parallel':
clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
clusterExport, clusterMap, parApply, parCapply, parLapply,
parLapplyLB, parRapply, parSapply, parSapplyLB
The following objects are masked from 'package:stats':
IQR, mad, xtabs
The following objects are masked from 'package:base':
Filter, Find, Map, Position, Reduce, anyDuplicated, append,
as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
rbind, rownames, sapply, setdiff, sort, table, tapply, union,
unique, unsplit
Loading required package: GenomeInfoDb
Loading required package: stats4
Loading required package: S4Vectors
Attaching package: 'S4Vectors'
The following objects are masked from 'package:base':
colMeans, colSums, expand.grid, rowMeans, rowSums
Loading required package: IRanges
Loading required package: GenomicRanges
Loading required package: SummarizedExperiment
Loading required package: Biobase
Welcome to Bioconductor
Vignettes contain introductory material; view with
'browseVignettes()'. To cite Bioconductor, see
'citation("Biobase")', and for packages 'citation("pkgname")'.
Loading required package: Rsamtools
Loading required package: Biostrings
Loading required package: XVector
Attaching package: 'VariantAnnotation'
The following object is masked from 'package:base':
tabulate
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/VariantAnnotation/GLtoGP.Rd_%03d_medium.png", width=480, height=480)
> ### Name: GLtoGP
> ### Title: Convert genotype likelihoods to genotype probabilities
> ### Aliases: GLtoGP PLtoGP
> ### Keywords: manip
>
> ### ** Examples
>
> ## Read a vcf file with a "GL" field.
> vcfFile <- system.file("extdata", "gl_chr1.vcf", package="VariantAnnotation")
> vcf <- readVcf(vcfFile, "hg19")
>
> ## extract genotype likelihoods as a matrix of lists
> gl <- geno(vcf)$GL
> class(gl)
[1] "matrix"
> mode(gl)
[1] "list"
>
> # convert to posterior probabilities
> gp <- GLtoGP(gl)
>
> ## Read a vcf file with a "PL" field.
> vcfFile <- system.file("extdata", "hapmap_exome_chr22.vcf.gz",
+ package="VariantAnnotation")
> vcf <- readVcf(vcfFile, "hg19")
Warning message:
In .bcfHeaderAsSimpleList(header) :
duplicate keys in header will be forced to unique rownames
>
> ## extract genotype likelihoods as a matrix of lists
> pl <- geno(vcf)$PL
> class(pl)
[1] "matrix"
> mode(pl)
[1] "list"
>
> # convert to posterior probabilities
> gp <- PLtoGP(pl)
>
>
>
>
>
> dev.off()
null device
1
>