Description Usage Arguments Details Value See Also Examples
Given a pair of cellularity and ploidy parameters, the function returns the most likely allele-specific copy numbers with the corresponding log-posterior probability of the fit, for given values of B-allele frequency and depth ratio.
1 2 3 4 5 6 7 8 | baf.bayes(Bf, depth.ratio, cellularity, ploidy, avg.depth.ratio,
sd.Bf = 0.1, sd.ratio = 0.5, weight.Bf = 1, weight.ratio = 1,
CNt.min = 0, CNt.max = 7, CNn = 2,
priors.table = data.frame(CN = CNt.min:CNt.max, value = 1),
ratio.priority = FALSE)
mufreq.bayes(mufreq, depth.ratio, cellularity, ploidy, avg.depth.ratio,
weight.mufreq = 100, weight.ratio = 100, CNt.min = 1, CNt.max = 7, CNn = 2,
priors.table = data.frame(CN = CNt.min:CNt.max, value = 1))
|
Bf |
vector of B-allele frequencies (values can range from 0 to 0.5). |
mufreq |
vector of mutation frequencies (values can range from 0 to 1). |
depth.ratio |
vector of depth ratios. |
sd.ratio |
standard deviation observed in the depth ratio measures in a segment |
sd.Bf |
standard deviation observed in the B-allele frequency measures in a segment |
weight.Bf |
vector of weights for B-allele frequency values. |
weight.mufreq |
vector of weights for the mutation frequency values. |
weight.ratio |
vector of weights for the depth ratio values. |
cellularity |
fraction of tumor cells in the sample. |
ploidy |
2 * ratio between total DNA content in a tumor cell and a normal cell. |
avg.depth.ratio |
average normalized depth ratio. |
CNt.min |
minimum copy number to consider in the model. |
CNt.max |
maximum copy number to consider in the model. |
CNn |
copy number of the normal genome. |
priors.table |
data frame with columns |
ratio.priority |
logical, if TRUE only the depth ratio will be used to determine the copy number state, while the Bf value will be used to determine the number of B-alleles. |
baf.bayes
and mufreq.bayes
use a naive Bayesian approach to calculate the posterior probability of fitness of the data point with the model point resulting from the given values of cellularity and DNA-content.
CNt |
copy number of the tumor cell at the tested point. |
A |
number of A-alleles at the tested point. |
B |
number of B-alleles at the tested point. |
CNn |
copy number of the normal cell at the tested point (equal to CNn given as argument). |
Mt |
number of mutated alleles at the tested point. |
LPP |
log-posterior probability of model fitting at the given point/segment. |
baf.model.fit
, mufreq.model.fit
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | ## Not run:
data.file <- system.file("extdata", "example.seqz.txt.gz", package = "sequenza")
# read all the chromosomes:
seqz.data <- read.seqz(data.file)
# Gather genome wide GC-stats from raw file:
gc.stats <- gc.sample.stats(data.file)
gc.vect <- setNames(gc.stats$raw.mean, gc.stats$gc.values)
# Read only one chromosome:
seqz.data <- read.seqz(data.file, chr.name = 1)
# Correct the coverage of the loaded chromosome:
seqz.data$adjusted.ratio <- seqz.data$depth.ratio /
gc.vect[as.character(seqz.data$GC.percent)]
# Select the heterozygous positions
seqz.hom <- seqz.data$zygosity.normal == 'hom'
seqz.het <- seqz.data[!seqz.hom, ]
# Detect breakpoints
breaks <- find.breaks(seqz.het, gamma = 80, kmin = 10, baf.thres = c(0, 0.5))
# use heterozygous and homozygous position to measure segment values
seg.s1 <- segment.breaks(seqz.data, breaks = breaks)
# filter out small ambiguous segments, and conveniently weight the segments by size:
seg.filtered <- seg.s1[(seg.s1$end.pos - seg.s1$start.pos) > 10e6, ]
weights.seg <- 150 + round((seg.filtered$end.pos -
seg.filtered$start.pos) / 1e6, 0)
# get the genome wide mean of the normalized depth ratio:
avg.depth.ratio <- mean(gc.stats$adj[,2])
# run the BAF model fit
CP <- baf.model.fit(Bf = seg.filtered$Bf, depth.ratio = seg.filtered$depth.ratio,
weight.ratio = weights.seg,
weight.Bf = weights.seg,
avg.depth.ratio = avg.depth.ratio,
cellularity = seq(0.1,1,0.01),
ploidy = seq(0.5,3,0.05))
confint <- get.ci(CP)
ploidy <- confint$max.ploidy
cellularity <- confint$max.cellularity
#detect copy number alteration on the segments:
cn.alleles <- baf.bayes(Bf = seg.s1$Bf, depth.ratio = seg.s1$depth.ratio,
cellularity = cellularity, ploidy = ploidy,
avg.depth.ratio = 1)
head(cbind(seg.s1, cn.alleles))
# create mutation table:
mut.tab <- mutation.table(seqz.data, mufreq.treshold = 0.15,
min.reads = 40, max.mut.types = 1,
min.type.freq = 0.9, segments = seg.s1)
mut.tab.clean <- na.exclude(mut.tab)
# Detect mutated alleles:
mut.alleles <- mufreq.bayes(mufreq = mut.tab.clean$F,
depth.ratio = mut.tab.clean$adjusted.ratio,
cellularity = cellularity, ploidy = ploidy,
avg.depth.ratio = avg.depth.ratio)
head(cbind(mut.tab.clean[,c("chromosome","position","F",
"adjusted.ratio", "mutation")],
mut.alleles))
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.