IPCAPS

Iterative Pruning to CApture Population Structure

Description

Determining a fine population structure using iterative pruning.

Details

Package: IPCAPS
Type: R Package
Version: 1.1.5
Required: R (>= 3.2.4.0), stats, utils, graphics, grDevices, MASS, Matrix, expm, KRIS, fpc, LPCM, apcluster, Rmixmod

License:

GPL  3


This package contains a function 
ipcaps for unsupervised clustering.

Authors

Kridsadakorn Chaichoompu, Fentaw Abegaz Yazew, Sissades Tong-sima, Philip James Shaw, Anavaj Sakuntabhai, and Kristel Van Steen

Maintainer: Kridsadakorn Chaichoompu <kridsadakorn [at] biostatgen [dot] org>

Installation

Install from R terminal:

    # install required packages for "KRIS"
    install.packages(c("rARPACK","grDevices","graphics","stats","utils"))
    
    # install the package "KRIS"
    install.packages("http://bio3.giga.ulg.ac.be/ipcaps/KRIS_lastest.tar.gz", type="source")

    # install required packages
    install.packages(c("stats", "utils", "graphics", "grDevices", "MASS", "expm", "fpc", "LPCM", "apcluster", "Rmixmod", "Matrix"))

    # install the package "IPCAPS"
    install.packages("http://bio3.giga.ulg.ac.be/ipcaps/IPCAPS_latest.tar.gz", type="source")

 

Update 16/06/2019

The IPCAPS framework was released as 2 packages; IPCAPS and KRIS, due to the conflict of GPL-2 and GPL-3 of its dependencies. The functions and objects of IPCAPS and KRIS are shown as in the tables below:

The R Package IPCAPS

Functions and Objects Description
export.groups Export the IPCAPS result to a text file
get.node.info Get the information for specified node
ipcaps Perform unsupervised clustering to capture population structure based on iterative pruning
label Synthetic dataset containing population labels for the dataset ‘raw.data’
PC Synthetic dataset containing the top 10 principal components (PC) from the dataset ‘raw.data’
raw.data Synthetic dataset containing single nucleotide polymorphisms (SNP)
save.eigenplots.html Generate HTML file for EigenFit plots
save.html Generate HTML file for clustering result in text mode
save.plots Workflow to generate HTML files for all kinds of plots
save.plots.cluster.html Generate HTML file for scatter plots which all data points are highlighted by IPCAPS clusters
save.plots.label.html Generate HTML file for scatter plots which data points are highlighted by given labels
top.discriminator Detecting top discriminators between two groups

 

The R Package KRIS: Keen and Reliable Interface Subroutines for Bioinformatic Analysis

Functions and Objects Description
cal.pc.linear Calculate linear principal component analysis (PCA) from numeric data and Single-nucleotide polymorphism (SNP) dataset
cal.pc.projection Calculate linear principal component analysis (PCA) with a projection method for Single-nucleotide polymorphism (SNP) dataset.
fst.each.snp.hudson Calculate the fixation index (Fst) for all SNPs between two groups of individuals from Single-nucleotide polymorphism (SNP)
fst.hudson Calculate the average fixation index (Fst) between two groups of individuals from Single-nucleotide polymorphism (SNP)
plot3views Create scatter plots in three views.
read.bed Read the binary PLINK format (BED, BIM, and FAM)
rubikclust Unsupervised clustering to detect rough structures and outliers.
sample_labels Synthetic dataset containing population labels for the dataset simsnp.
simsnp Synthetic dataset containing single nucleotide polymorphisms (SNP)
write.bed Write a list of SNP object to the binary PLINK format (BED, BIM, and FAM)
xxt Calculate matrix multiplication between a matrix and its transpose for large data.

 

How to cite

  • To cite the paper of the R package IPCAPS published in Source Code for Biology and Medicine, doi: 10.1186/s13029-019-0072-6

@article{chaichoompu_ipcaps:_2019,
title = {{IPCAPS}: an {R} package for iterative pruning to capture population structure},
volume = {14},
issn = {1751-0473},
shorttitle = {{IPCAPS}},
url = {https://scfbm.biomedcentral.com/articles/10.1186/s13029-019-0072-6},
doi = {10.1186/s13029-019-0072-6},
language = {en},
number = {1},
urldate = {2019-03-25},
journal = {Source Code for Biology and Medicine},
author = {Chaichoompu, Kridsadakorn and Abegaz, Fentaw and Tongsima, Sissades and Shaw, Philip James and Sakuntabhai, Anavaj and Pereira, Luísa and Van Steen, Kristel},
month = dec,
year = {2019}
}

  • The manuscript of IPCAPS’s methodology on bioRxiv.org

@article {Chaichoompu234989,
author = {Chaichoompu, Kridsadakorn and Abegaz, Fentaw and Tongsima, Sissades and Shaw, Philip James and Sakuntabhai, Anavaj and Cavadas, Bruno and Pereira, Luisa and Van Steen, Kristel},
title = {A methodology for unsupervised clustering using iterative pruning to capture fine-scale structure},
year = {2017}, doi = {10.1101/234989},
publisher = {Cold Spring Harbor Laboratory},
URL = {https://www.biorxiv.org/content/early/2017/12/15/234989},
eprint = {https://www.biorxiv.org/content/early/2017/12/15/234989.full.pdf},
journal = {bioRxiv}}

How to run IPCAPS in the command-line mode in Linux

Note: To use IPCAPS in the R terminal, please check the IPCAPS manual in R

If you want to run IPCAPS in the terminal (for example, in the Linux cluster), it requires the extra R script. Here, you can download the IPCAPS warper, which you can run the warper script using the Rscript command directly. In addition, this is the example of bash script to call the IPCAPS warper. The example bash script will download the IPCAPS warper and example files automatically.

Here are the files can be download in this section:

Example files

Dataset: P3I250F005OL10 (download all files as zip)

Dataset: HapMap3 (CEU, YRI, CHB, JPT) after QC (download all files as zip)

Result files

Dataset: P3I250F005OL10 (analyzed by IPCAPS v 0.42.3)

Dataset: HapMap3 (CEU, YRI, CHB, JPT) after QC (analyzed by IPCAPS v 0.42.3)