Nothing
####################################################################
## Author: Gro Nilsen, Knut Liestřl and Ole Christian Lingjćrde.
## Maintainer: Gro Nilsen <gronilse@ifi.uio.no>
## License: Artistic 2.0
## Part of the copynumber package
## Reference: Nilsen and Liestřl et al. (2012), BMC Genomics
####################################################################
#Function to check that specified chrom are numeric, found in data and/or segments and print appropriate error/warning messages depending on the plot type
#If chrom=NULL; all unique chromosomes found in data and/or segments are selected
#Input:
### chrom: a vector of unique chromosome numbers, or NULL
### data: the copy number data frame
### segments: a list containing one or more segmentations
### type: plot type (sample,chromosome,aspcf)
##Output:
### use.chrom : a vector of unique selected chromosomes to be plotted
##Function called by:
### plotFreq
### plotHeatmap
### plotWeightedFreq
### checkAndRetrievePlotInput
##Function calls:
### numericChrom
checkChrom <- function(data,segments,chrom){
chrom.list <- NULL
if(!is.null(data)){
chrom.list <- unique(data[,1])
}
if(!is.null(segments)){
all.chrom <- sapply(segments,"[",i=2) #returns a list with chromsome numbers for each segmentation
seg.chrom <- lapply(all.chrom,unique)
#Find common chromosomes in data and all segmentations:
i <- 1
if(is.null(chrom.list)){
chrom.list <- seg.chrom[[1]]
i <- i+1
}
while(i<=length(seg.chrom)){
chrom.list <- intersect(chrom.list,seg.chrom[[i]])
i <- i+1
}
}#endif
#Check input chromosomes, print error or warning if needed:
if(is.null(chrom)){
use.chrom <- chrom.list
}else{
#Make sure chrom is numeric
chrom <- numericChrom(chrom)
#Check that specified chrom are all in allowed list (found in data and segments):
use <- chrom%in%chrom.list
use.chrom <- chrom[use]
if(length(use.chrom)==0){
#print error message
if(!is.null(data) && !is.null(segments)){
msg <- "Specified chromosome(s) are not found in data and/or segments"
}else if(is.null(segments)){
msg <- "Specified chromosome(s) are not found in data"
}else{
msg <- "Specified chromosome(s) are not found in segments"
}
stop(msg,call.=FALSE)
}else if(length(use.chrom)!=length(chrom)){
not.use <- paste(chrom[!use],sep="",collapse=",")
if(!is.null(data) && !is.null(segments)){
msg <- "The following chromosome(s) are not found in data and/or segments:"
}else if(is.null(segments)){
msg <- "The following chromosome(s) are not found in data:"
}else{
msg <- "The following chromosome(s) are not found in segments:"
}
warning(paste(msg,not.use,sep=" "),call.=FALSE,immediate.=TRUE)
}
}#endif
#make sure that chromosome numbers are in increasing order
use.chrom <- sort(use.chrom)
return(use.chrom)
}#end checkChrom
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.