karyotypeMeasures {AneuFinder} | R Documentation

## Measures for Karyotype Heterogeneity

### Description

Computes measures for karyotype heterogeneity. See the Details section for how these measures are defined.

### Usage

    karyotypeMeasures(hmms, normalChromosomeNumbers = NULL, regions = NULL,
      exclude.regions = NULL)

### Arguments

`hmms` | A list with `aneuHMM` objects or a list of files that contain such objects.
`normalChromosomeNumbers` | A named integer vector or matrix with physiological copy numbers, where each element (vector) or column (matrix) corresponds to a chromosome. This is useful to specify male or female samples, e.g. `c('X'=2)` for female samples or `c('X'=1,'Y'=1)` for male samples. Specify a vector if all your `hmms` have the same physiological copy numbers. Specify a matrix if your `hmms` have different physiological copy numbers (e.g. a mix of male and female samples). If not specified otherwise, '2' will be assumed for all chromosomes.
`regions` | A `GRanges-class` object containing ranges for which the karyotype measures will be computed.
`exclude.regions` | A `GRanges-class` with regions that will be excluded from the computation of the karyotype measures. This can be useful to exclude regions with artifacts.

### Details

We define x as the vector of copy number states for each position. The number of HMMs is S. The measures are computed for each bin as follows:

Aneuploidy:

  D = mean( abs(x-P) ), where P is the physiological number of chromosomes at that position.

Heterogeneity:

  H = sum( table(x) * 0:(length(table(x))-1) ) / S

### Value

A `list` with two `data.frame`s, containing the karyotype measures $genomewide and $per.chromosome. If `region` was specified, a third list entry $regions will contain the regions with karyotype measures.

### Author(s)

Aaron Taudt

### Examples

    ### Example 1 ###
    ## Get results from a small-cell-lung-cancer
    lung.folder <- system.file("extdata", "primary-lung", "hmms", package="AneuFinderData")
    lung.files <- list.files(lung.folder, full.names=TRUE)
    ## Get results from the liver metastasis of the same patient
    liver.folder <- system.file("extdata", "metastasis-liver", "hmms", package="AneuFinderData")
    liver.files <- list.files(liver.folder, full.names=TRUE)
    ## Compare karyotype measures between the two cancers
    normal.chrom.numbers <- rep(2, 23)
    names(normal.chrom.numbers) <- c(1:22,'X')
    lung <- karyotypeMeasures(lung.files, normalChromosomeNumbers=normal.chrom.numbers)
    liver <- karyotypeMeasures(liver.files, normalChromosomeNumbers=normal.chrom.numbers)
    print(lung$genomewide)
    print(liver$genomewide)

    ### Example 2 ###
    ## Construct a matrix with physiological copy numbers for a mix of 5 male and 5 female samples
    normal.chrom.numbers <- matrix(2, nrow=10, ncol=24,
                                  dimnames=list(sample=c(paste('male', 1:5), paste('female', 6:10)),
                                                chromosome=c(1:22,'X','Y')))
    normal.chrom.numbers[1:5,c('X','Y')] <- 1
    normal.chrom.numbers[6:10,c('Y')] <- 0
    print(normal.chrom.numbers)

    ### Example 3 ###
    ## Exclude artifact regions with high variance
    consensus <- consensusSegments(c(lung.files, liver.files))
    variance <- apply(consensus$copy.number, 1, var)
    exclude.regions <- consensus[variance > quantile(variance, 0.999)]
    ## Compare karyotype measures between the two cancers
    normal.chrom.numbers <- rep(2, 23)
    names(normal.chrom.numbers) <- c(1:22,'X')
    lung <- karyotypeMeasures(lung.files, normalChromosomeNumbers=normal.chrom.numbers,
                             exclude.regions = exclude.regions)
    liver <- karyotypeMeasures(liver.files, normalChromosomeNumbers=normal.chrom.numbers,
                              exclude.regions = exclude.regions)
    print(lung$genomewide)
    print(liver$genomewide)

[Package AneuFinder version 1.12.1 Index]