snpgdsIBSNum {SNPRelate} | R Documentation

## Identity-By-State (IBS)

### Description

Calculate the number of SNPs for identity by state for each pair of samples.

### Usage

    snpgdsIBSNum(gdsobj, sample.id = NULL, snp.id = NULL, autosome.only = TRUE,
        remove.monosnp = TRUE, maf = NaN, missing.rate = NaN, num.thread = 1L,
        verbose = TRUE)

### Arguments

`gdsobj` | an object of class `SNPGDSFileClass`, a SNP GDS file
`sample.id` | a vector of sample id specifying selected samples; if NULL, all samples are used
`snp.id` | a vector of snp id specifying selected SNPs; if NULL, all SNPs are used
`autosome.only` | if `TRUE`, use autosomal SNPs only; if it is a numeric or character value, keep SNPs according to the specified chromosome
`remove.monosnp` | if TRUE, remove monomorphic SNPs
`maf` | to use the SNPs with ">= maf" only; if NaN, no MAF threshold
`missing.rate` | to use the SNPs with "<= missing.rate" only; if NaN, no missing threshold
`num.thread` | the number of (CPU) cores used; if `NA`, detect the number of cores automatically
`verbose` | if TRUE, show information

### Details

The minor allele frequency and missing rate for each SNP passed in `snp.id` are calculated over all the samples in `sample.id`.

### Value

Return a list (n is the number of samples):

`sample.id` | the sample ids used in the analysis
`snp.id` | the SNP ids used in the analysis
`ibs0` | a n-by-n matrix, the number of SNPs sharing 0 IBS
`ibs1` | a n-by-n matrix, the number of SNPs sharing 1 IBS
`ibs2` | a n-by-n matrix, the number of SNPs sharing 2 IBS

### Author(s)

Xiuwen Zheng

### See Also

`snpgdsIBS`

### Examples

    # open an example dataset (HapMap)
    genofile <- snpgdsOpen(snpgdsExampleFileName())

    RV <- snpgdsIBSNum(genofile)
    pop <- read.gdsn(index.gdsn(genofile, "sample.annot/pop.group"))
    L <- order(pop)
    image(RV$ibs0[L, L]/length(RV$snp.id))

    # close the genotype file
    snpgdsClose(genofile)

[Package SNPRelate version 1.20.1 Index]