# UNIQmin: An alignment-independent tool for the study of viral sequence diversity at any given rank of taxonomy lineage

[![DOI - 10.3390/biology10090853](https://img.shields.io/badge/DOI-10.3390%2Fbiology10090853-2ea44f)](https://doi.org/10.3390/biology10090853)
[![ChongLC - MinimalSetofViralPeptidome-UNIQmin](https://img.shields.io/static/v1?label=ChongLC&message=UNIQmin&color=blue&logo=github)](https://github.com/ChongLC/MinimalSetofViralPeptidome-UNIQmin)
[![stars - MinimalSetofViralPeptidome-UNIQmin](https://img.shields.io/github/stars/ChongLC/MinimalSetofViralPeptidome-UNIQmin?style=social)](https://github.com/ChongLC/MinimalSetofViralPeptidome-UNIQmin)
[![forks - MinimalSetofViralPeptidome-UNIQmin](https://img.shields.io/github/forks/ChongLC/MinimalSetofViralPeptidome-UNIQmin?style=social)](https://github.com/ChongLC/MinimalSetofViralPeptidome-UNIQmin)
[![License](https://img.shields.io/badge/License-MIT-blue)](#license)


### Brief Description
Sequence variation among viruses, even of a single amino acid, can expand their host repertoire or enhance the infection ability. Alignment-independent or -free approach represents an alternative to the study of viral diversity, which is devoid of the need for sequence conservation to perform comparative analyses. Herein, we present UNIQmin, a tool that utilises an alignment independent method to generate the minimal set of viral sequences, as a way to study their diversity, across any rank of taxonomic lineage. The minimal set refers to the smallest possible number of sequences required to capture the entire repertoire of viral peptidome diversity present in a sequence dataset.

### Installation
`pip install uniqmin`

### Upgrade installed UNIQmin
`pip install uniqmin --upgrade`

### Usage
`uniqmin [-h] [-i INPUT] [-o OUTPUT] [-k KMERLENGTH] [-t THREADS]`

For example, the UNIQmin tool is applied to generate a minimal set (in an output folder, *e.g.* result) with a sample input file ("exampleinput.fas"). A *k*-mer window size of nine (9; nonamer) is used and utilising 4-threads: 

```
uniqmin -i exampleinput.fas -o result -k 9 -t 4
```

### Command-line Arguments
| Argument 	| Parameter              | Type    	| Required | Default 	| Description                                |           
|----------	|----------------------- |---------	|----------|----------|------------------------------------------  |
| -h       	| help                   | N/A     	|FALSE	   | N/A     	| Show this help message and exit            |
| -i       	| sequence input file    | String  	|TRUE	     | N/A     	| Path of the input file (in FASTA format)   |
| -o       	| output directory name  | String  	|TRUE      | N/A     	| Path of the output file to be created      |
| -k        | *k*-mer window size    | Integer 	|FALSE     | 9       	| The length of *k*-mers to be used          |
| -t        | number of threads      | Integer 	|FALSE     | 4        | The number of threads to be used           |

For more information, please visit [UNIQmin GitHub page](https://github.com/ChongLC/MinimalSetofViralPeptidome-UNIQmin). 

### License
© 2021 Chong LC

This repository is licensed under the MIT license.
See LICENSE for details.