Crates.io | gxf2chrom |
lib.rs | gxf2chrom |
version | 0.1.0 |
source | src |
created_at | 2024-03-04 03:45:51.170295 |
updated_at | 2024-03-04 03:45:51.170295 |
description | Everything in .chrom from GTF/GFF |
homepage | https://github.com/alejandrogzi/gxf2chrom |
repository | https://github.com/alejandrogzi/gxf2chrom |
max_upload_size | |
id | 1161173 |
size | 42,536 |
Everything in .chrom from GTF/GFF files.
turns GTF/GFF files into:
ENSP00000501388.1 chr1 - 19417068 19485438
ENSP00000438792.1 chr11 - 72754899 72781181
ENSP00000224756.8 chr10 + 84371052 84513540
ENSP00000415935.1 chr2 + 215312481 215349652
Some stast on different species:
Homo sapiens GRCh38 GENCODE 44 (252,835 transcripts) in 1.84 seconds.
Mus musculus GRCm39 GENCODE 44 (149,547 transcritps) in 1.02 seconds.
Canis lupus familiaris ROS_Cfam_1.0 Ensembl 110 (55,335 transcripts) in 0.57 seconds.
Gallus galus bGalGal1 Ensembl 110 (72,689 transcripts) in 0.62 seconds.
Usage: gxf2chrom [OPTIONS] --input <GXF> --output <CHROM>
Arguments:
--input/-i <GXF>: a .gtf/gff/*.gz file
--output/-o <CHROM>: path to output .chrom file
Options:
--help/-h: print help
--version/-v: print version
--feature/-f: feature to extract [default: protein_id]
--threads/-t: number of threads [default: max ncpus]
to install gxf2chrom on your system follow this steps:
curl https://sh.rustup.rs -sSf | sh
on unix, or go here for other optionscargo install gxf2chrom
(make sure ~/.cargo/bin
is in your $PATH
before running it)gxf2chrom
with the required argumentsto build gxf2chrom from this repo, do:
git clone https://github.com/alejandrogzi/gxf2chrom.git && cd gxf2chrom
cargo run --release -- -i <GXF> -o <CHROM> [OPTIONS]
to build the development container image:
git clone https://github.com/alejandrogzi/gxf2chrom.git && cd gxf2chrom
start docker
or systemctl start docker
docker image build --tag gxf2chrom .
docker run --rm -v "[dir_where_your_gxf_is]:/dir" gxf2chrom -i /dir/<GXF> -o /dir/<CHROM>
to use gxf2chrom through Conda just:
conda install gxf2chrom -c bioconda
or conda create -n gxf2chrom -c bioconda gtfsort
This tool was inspired by NCBIgff2chrom.py from the Oxford dot plots repository. to quickly convert GTF/GFF files into .chrom files. Here is a quick benchmark:
Format | odp | gxf2chrom | fold |
---|---|---|---|
gff3 | 4.30 +/- 0.03 | 1.88 +/- 0.01 | x2.29 |
gff3.gz | 6.27 +/- 0.18 | 2.05 +/- 0.01 | x3.06 |
gtf | --- | 1.83 +/- 0.01 | --- |
gtf.gz | --- | 1.94 +/- 0.01 | --- |
With faster times, gxf2chrom intends to be a versatile approach to be implemented in any pipeline!