stripeDiff

May 14, 2021 ยท View on GitHub

stripeDiff is a software to identify differential stripes between two Hi-C samples.

Copyright (c) 2020 Dr. Kaifu Chen lab

Current version v1.0

How does stripeDiff work

Installation

The following codes download stripeDiff to the home directory. Users can install it anywhere they want by changing '~' to their desired directory.

cd ~
git clone https://github.com/GuangyWang/stripeDiff.git

To test stripeDiff, change to the "test" directory and run test.sh

cd stripeDiff/test
sh test.sh

Software dependancies

Running stripeDiff requires python 3.5.1 or above, R 3.5.1 or above, and the following packages:

Execution


In general, stripeCalling.sh can be executed by following command line options:

sh /path/to/stripeCalling.sh [options]* <-a matrixA> <-b matrixB> <-n name>
Required arguments:
    <-a matrixA> defines the input matrix A
    <-b matrixB> defines the input matrix B
    <-n name> defines two sample names and chromosome. e.g., wt,mutant,chr1

Optional arguments:
    [-l length] defines row and column number of split submatrix. Default: 300 
    [-o outDir] defines the path to output files. It must be set if the two input matrices are not under the same directory
    [-r resolution] defines the bin size. If it is not provided, the bin number of identified stripes will be output
    [-f] runs in a mode without estimating stripe length, which is faster than default mode

Input

The main input are two Hi-C matrices. Each matrix could be in sparse (N * N) or verbose format. The verbose format should have three column. The first two columns are two genomic regions, and the third column is the interaction frequency. Here is an example of verbose format (the table header is not needed):

region1region2contact frequency
300000030000002095.53
30000003010000279.50217
301000030100002625.0593
30000003020000139.41035

Output

stripeDiff has two output tables: stripes present in matrix A and stripes present in matrix B

columnexplaination
1stchromosome
2ndleft boundary of a stripe
3rdright boundary of a stripe
4thexpanded left boundary of a stripe
5thexpanded right boundary of a stripe
6thleft signal of a stripe in Matrix A
7thright signal of a stripe in Matrix A
8thsignal fold change of a stripe in Matrix A
9thP value of a stripe in Matrix A
10thleft signal of a stripe in Matrix B
11thright signal of a stripe in Matrix B
12thsignal fold change of a stripe in Matrix B
13thP value of a stripe in Matrix B
14thP value for a differential stripe
15thdirection of a stripe, could be left or right
16thend of a stripe

Contacts

If you find any bugs or have difficulties in using stripeDiff, please feel free to contact Guangyu Wang (guangywang@gmail.com).