Please check our GitHub page for most recent software development:

R Packages


A two-step approach to estimate the skeleton of Directed Acyclic Graphs (DAGs). The first step is to estimate a partial correlation graph using penalized regression and the second step is to convert the partial correlation graph to DAG sekelton using a modified PC algorithm.

asSeq (vignettes)

A set of tools for the study of allele-specific RNA-seq data.


Bayesian and Penalized regression in multiple loci mapping. It includes a set of tools for simultaneously multiple loci mapping, and two novel methods named the Bayesian adaptive Lasso and the Iterative Adaptive Lasso


Simultaneously dissect copy number states and genotypes using the data from high density SNP arrays

isoform (vignettes)

A set of tools for RNA isoform study using RNA-seq data.


A mixture model approach to analyze ChIP-chip or ChIP-seq data, also with some utility functions to process DNA sequence data.


exact permutation p-value calculation for case-control study of collapsoing a group of rare SNPs, and approximate permutation p-value calculation for QTL mapping in experimental cross

eMap (v1.2 Feb 2nd, 2010) (vignettes)

eQTL computation, visiualization, eQTL module, integrated studies of complex trait, gene epression and genetic markers, etc.


Tools for applying Slice Inverse Regression in censored data.


Segmental semi-Markov model. 



A workflow for single cell RNA-seq data analysis Data processing, Quality Control, and some initial analysis such as dimension reduction, clustering, and annotating cell types.

Other Programming (for fun)

simulated annealing

Use simulated annealing method to solve the sudoku puzzle.


Calculate profit of option investment using combination of bear spread and bull spread.