Skip to main content

A tool to compare protein feature architectures

Project description

FAS - Feature Architecture Similarity

PyPI version GPLv3-license Github Build

FAS is a new release of the original FACT algorithm. It calculates the so called FAS-score which is a measure of how similar the feature architectures of two proteins are. This is done by combining the Multiplicity Score (MS) and the Positional Score (PS) from FACT. Unlike the original FACT, FAS can resolve feature architectures that have overlapping features by searching for the best overlap-free path. This can be done either extensively or by using the priority mode, a greedy approach. FAS also allows for more options in the weighting of features.

Table of Contents

Installation

FAS is provided as a python package and compatible with Python3.

You can install FAS with pip:

python3 -m pip install greedyFAS

(*) In case you do not have admin rights, and don't use package systems like Anaconda to manage environments you need to use the --user option (not recommended):

python3 -m pip install --user greedyFAS

and then add the following line to the end of your .bashrc or .bash_profile file, restart the current terminal to apply the change:

export PATH=$HOME/.local/bin:$PATH

Usage

Download and install annotation tools

Before using FAS, some annotation tools and databases need to be installed. FAS' standard databases/annotation tools are: PFAM, SMART, fLPS, SEG, COILS, THMHH 2.0c and SignalP 4.1g. To get these tools and make a configuration file for FAS, please use the setupFAS function:

fas.setup -t /directory/where/you/want/to/save/annotation/tools

Inside the output directory you will find a file called annoTools.txt that contains all installed annotation tools. If you wish to discard any of them from the annotation process, you can just remove the unneeded tools from that file.

Please read our wiki page of setupFAS for other use-cases, such as how to use your old annotation tools with the new FAS, etc.

NOTE: we provide compiled code only for PFAM, COILS and SEG. fLPS will be automatically downloaded and installed. For SMART, you need to download it from EMBLEM and give the path to fas.setup. For TMHMM and SignalP, you can decide if you want to include those two tools to the annotation step (recommended) or ignore them. For using TMHMM version 2.0c and SignalP version 4.1g, you need to request a license from the authors at https://services.healthtech.dtu.dk, and save the downloaded files in the same directory. FAS will do the rest for you ;-)

NOTE2: SignalP 5.0b is not supported yet!!!

We suggest you test the annotation tools by running this command:

fas.doAnno -i test_annofas.fa -o test_output

test_annofas.fa is a demo multiple fasta file, which is saved in the installed greedyFAS directory.

Perform feature annotation

If you only want to annotate your protein sequences without calculating the FAS scores, you can use the doAnno function.

fas.doAnno --fasta your_proteins.fa --outPath /annotation/path/

The annotation output (your_proteins.json by default) will be saved in /annotation/path/.

Alternatively, you can do the annotation using InterProScan and use the function parseAnno to convert the InterProScan's tsv output into json format for using with FAS.

fas.parseAnno -i INPUT.tsv -o /annotation/path/INPUT.json -t <tool_name> -f <feature columns> ...

Please check the usage of parseAnno for more info (using fas.parseAnno -h).

Compare protein feature architectures

The main purpose of FAS is to calculate the similarity score between 2 given proteins (or two list of proteins). This can be done using the run function.

fas.run -s seed.fa -q query.fa -a /annotation/path/ -o /output/path/

If the annotations of seed and query protein(s) already exist in /annotation/path/ (seed.json and query.json, respectively), run will use these annotations for calculating the FAS scores. Otherwise, it will first annotate the proteins and then compare the feature architectures of those two protein sets.

Additional Information

A thorough guide to all FAS commands and options can be found at our WIKI page.

How-To Cite

Julian Dosch, Holger Bergmann, Vinh Tran, Ingo Ebersberger, FAS: assessing the similarity between proteins using multi-layered feature architectures, Bioinformatics, Volume 39, Issue 5, May 2023, btad226, https://doi.org/10.1093/bioinformatics/btad226

Contributors

Contact

Julian Dosch dosch@bio.uni-frankfurt.de

Ingo Ebersberger ebersberger@bio.uni-frankfurt.de

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

greedyfas-1.18.13.tar.gz (86.0 kB view details)

Uploaded Source

Built Distribution

greedyFAS-1.18.13-py3-none-any.whl (116.9 kB view details)

Uploaded Python 3

File details

Details for the file greedyfas-1.18.13.tar.gz.

File metadata

  • Download URL: greedyfas-1.18.13.tar.gz
  • Upload date:
  • Size: 86.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.18

File hashes

Hashes for greedyfas-1.18.13.tar.gz
Algorithm Hash digest
SHA256 c7a4317050594eea5d15f3afdac3c2b03526582e373be586801c3604ecb22564
MD5 33484d9eefdd9c10fa33b75107504f35
BLAKE2b-256 9a3e06c78ada6fa3bd9a9c48fc64c1c16458f6af9ec1048a156ce3910327a907

See more details on using hashes here.

File details

Details for the file greedyFAS-1.18.13-py3-none-any.whl.

File metadata

  • Download URL: greedyFAS-1.18.13-py3-none-any.whl
  • Upload date:
  • Size: 116.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.18

File hashes

Hashes for greedyFAS-1.18.13-py3-none-any.whl
Algorithm Hash digest
SHA256 a45a00e5e0fd44eb181c13dd3d30f4b833ab000957652c4abd516455eaa3dde7
MD5 6ac5abf68ae8a473f6d1d1cea4e82a4b
BLAKE2b-256 50258ffc26a430ed3e7c681541b2389b694ea6ed38e1a2299b6ed5e2e454797f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page