single-cell Variant-calling by Integer Linear Programming (scVILP) is a new approach to mutation calling in single cells with Perfect Phylogeny assumption using Integer Linear Programming formulations. scVILP jointly calls mutations for each cell and estimates the Perfect Phylogeny of those cells in the presence of allelic dropouts and missing data. It is possible for the user to investigate the violations of infinite-sites assumption on the inference by setting an upper bound on the number of violations
conda install -c etetoolkit ete3
First, run one of the following commmands to identify the candidate mutation loci 1- With the number of cells:
python loci_identify.py -in ovarian.mpileup -out ./output.mpileup -n 370 -ms 2 -nmc 3
2- Or, using a text file containing the cell names to run this code:
python loci_identify.py -in ovarian.mpileup -out ./output,mpileup -names cellNames.txt -ms 2 -nmc 3
At this step, the user needs to select the loci on which they are performing the analysis. The parameters are as follows:
To run the optimizer, enter the following command:
python scVILP_main.py -in <path to the mpileup file> -names <path to the cell names> -out <path to the output directory>
To see the other options:
python scVILP_main.py --help
Running the main code, generates two files in the output directory specified by the user:
Please feel free to contact edrisi@rice.edu if you have any questions