Learn R Programming

mBPCR (version 1.26.0)

estProfileWithMBPCR: Estimate and print the copy number profile of some chromosomes of a sample

Description

Function to estimate the copy number profile with a piecewise constant function using mBPCR. Eventually, it is possible to estimate the profile with a smoothing curve, using either the Bayesian Regression Curve with $K_2$ (BRC with $K_2$) or the Bayesian Regression Curve Averaging over k (BRCAk). It is also possible to choose the estimator of the variance of the levels rhoSquare (i.e. either $\hat{\rho}_1^2$ or $\hat{\rho}^2$) and by default $\hat{\rho}_1^2$ is used.

Usage

estProfileWithMBPCR(snpName, chr, position, logratio, chrToBeAnalyzed, maxProbeNumber, rhoSquare=NULL, kMax=50, nu=NULL, sigmaSquare=NULL, typeEstRho=1, regr=NULL)

Arguments

snpName
array containing the name of each probe
chr
array containing the name of the chromosome to which each of the probes belongs. The possible values of the elements of chr are: the integers from 1 to 22, 'X' and 'Y'.
position
array containing the physical position of each probe
logratio
array containing the log2ratio of the raw copy number data
chrToBeAnalyzed
array containing the name of the chromosomes that the user wants to analyze. The possible values of the chromosomes are: the integers from 1 to 22, 'X' and 'Y'.
maxProbeNumber
maximum number of probes that a chromosome (or arm of a chromosome) can have to be analyzed. The procedure of profile estimation needs the computation of an array of length $(length(chromosome)+1)*(length(chromosome)+2)/2$. To be sure to have set this parameter correctly, try to create the array A <- array(1, dim=(maxProbeNumber+1)*(maxProbeNumber+2)/2), before starting with the estimation procedure.
rhoSquare
variance of the segment levels. If rhoSquare=NULL, then the algorithm estimates it on the sample.
kMax
maximum number of segments
nu
mean of the segment levels. If nu=NULL, then the algorithm estimates it on the sample.
sigmaSquare
variance of the noise. If sigmaSquare=NULL, then the algorithm estimates it on the sample.
typeEstRho
choice of the estimator of rhoSquare. If typeEstRho=1, then the algorithm estimates rhoSquare with $\hat{\rho}_1^2$, while if typeEstRho=0, it estimates rhoSquare with $\hat{\rho}^2$.
regr
choice of the computation of the regression curve. If regr=NULL, then the regression curve is not computed, if regr="BRC" the Bayesian Regression Curve is computed (BRC with $K_2$), if regr="BRCAk" the Bayesian Regression Curve Averaging over k is computed (BRCAk).

Value

A list containing:
estPC
an array containing the estimated profile with mBPCR
estBoundaries
the list of estimated breakpoints for each of the analyzed chomosomes
postProbT
the list of the posterior probablity to be a breakpoint for each estimated breakpoint of the analyzed chomosomes
regrCurve
an array containing the estimated bayesian regression curve
estPC and regrCurve have the same length of logratio, hence their components, corresponding to the not analyzed chromosomes, are equal to NA.

Details

By default, the function estimates the copy number profile with mBPCR and estimating rhoSquare on the sample, using $\hat{\rho}_1^2$. It is also possible to use $\hat{\rho}^2$ as estimator of rhoSquare, by setting typeEstRho=0, or to directly set the value of the parameter. The function gives also the possibility to estimate the profile with a Bayesian regression curve: if regr="BRC" the Bayesian Regression Curve with $K_2$ is computed (BRC with $K_2$), if regr="BRCAk" the Bayesian Regression Curve Averaging over k is computed (BRCAk).

See function writeEstProfile, to have the results in nicer tables or to write them on files.

References

Rancoita, P. M. V., Hutter, M., Bertoni, F., Kwee, I. (2009). Bayesian DNA copy number analysis. BMC Bioinformatics 10: 10. http://www.idsia.ch/~paola/mBPCR

See Also

plotEstProfile, writeEstProfile, computeMBPCR

Examples

Run this code
##import the 10K data of cell line REC  
data(rec10k)
##estimation of the profile of chromosome 5
results <- estProfileWithMBPCR(rec10k$SNPname, rec10k$Chromosome, rec10k$PhysicalPosition, rec10k$log2ratio, chrToBeAnalyzed=5, maxProbeNumber=2000)
##plot the estimated profile of chromosome 5
y <- rec10k$log2ratio[rec10k$Chromosome == 5]
p <- rec10k$PhysicalPosition[rec10k$Chromosome == 5]
plot(p, y)
points(p, results$estPC[rec10k$Chromosome == 5], type='l', col='red')

###for the estimation of the profile of all chromosomes
#results <- estProfileWithMBPCR(rec10k$SNPname, rec10k$Chromosome, rec10k$PhysicalPosition, rec10k$log2ratio, chrToBeAnalyzed=c(1:22,'X'), maxProbeNumber=2000)

Run the code above in your browser using DataLab