A Python package to clonal relate immunoglobulins.
ICING is an implementation of an unsupervised learning technique
used to identify clones
, which are groups of immunoglobulins which share
a common ancestor. In other words, immunoglobulins in the same group descend
from the same germline.
Also, the method is designed to be used also in contexts where
the number of samples is very high. For this reason, the framework can be used
in combination with NGS technologies.
First of all, download ICING from the Python Package Index by using package manager pip with
$ pip install icing
or clone it from our Github repository with
$ git clone https://github.com/slipguru/icing
and then install it with
$ python setup.py build_ext --inplace install
If you cloned the repository, navigate under icing/examples
directory. There, run an example with
$ ici_run.py config_example.py
The output should be in the form of
CRITICAL (2017-02-28 12:52:28,564): Start analysis for clones_95.tab
CRITICAL (2017-02-28 12:52:44,282): Number of clones: 104
If you want to produce some plots for the analysis, run
$ ici_analysis.py icing_example_result/icing_clones_95.tab_<today date> .
and that's it.
Great!
First of all, create a new configuration file with the -c
command.
$ ici_run.py -c config.py
Modify the configuration file to specify, for example, the path of your input files and non-standard ICING settings.
Run the icing core with
$ ici_run.py config.py
which will produce an output folder in <current_path>/results/icing_<date_of_today>
.
Now analyse the result
$ ici_analysis.py results/output_folder/
to produce plots related to your analysis. Done!
ICING is developed using Python 2.7 and inherits its main functionalities from:
- numpy
- scipy
- scikit-learn
- matplotlib
- seaborn
Current developer: Federico Tomasi (@fdtomasi).
Check out our documentation or contact us:
- federico [dot] tomasi [at] dibris [dot] unige [dot] it