snpgdsAlleleSwitch {SNPRelate} | R Documentation

## Allele-switching

### Description

Switch alleles according to the reference if needed.

### Usage

    snpgdsAlleleSwitch(gdsobj, A.allele, verbose=TRUE)

### Arguments

`gdsobj` | an object of class `SNPGDSFileClass`, a SNP GDS file
`A.allele` | characters, referring to A allele
`verbose` | if TRUE, show information

### Value

A logical vector with `TRUE` indicating allele-switching and `NA` when it is unable to determine. `NA` occurs when `A.allele = NA` or `A.allele` is not in the list of alleles.

### Author(s)

Xiuwen Zheng

### Examples

    # the file name of SNP GDS
    (fn <- snpgdsExampleFileName())

    # copy the file
    file.copy(fn, "test.gds", overwrite=TRUE)

    # open the SNP GDS file
    genofile <- snpgdsOpen("test.gds", readonly=FALSE)

    # allelic information
    allele <- read.gdsn(index.gdsn(genofile, "snp.allele"))
    allele.list <- strsplit(allele, "/")

    A.allele <- sapply(allele.list, function(x) { x[1] })
    B.allele <- sapply(allele.list, function(x) { x[2] })

    set.seed(1000)
    flag <- rep(FALSE, length(A.allele))
    flag[sample.int(length(A.allele), 50, replace=TRUE)] <- TRUE

    A.allele[flag] <- B.allele[flag]
    A.allele[sample.int(length(A.allele), 10, replace=TRUE)] <- NA
    table(A.allele, exclude=NULL)

    # allele switching
    z <- snpgdsAlleleSwitch(genofile, A.allele)

    table(z, exclude=NULL)

    # close the file
    snpgdsClose(genofile)

    # delete the temporary file
    unlink("test.gds", force=TRUE)

[Package SNPRelate version 1.12.2 Index]