A command line app for scalable, semi-supervised Uniprot querying
Project description
Motivation
UniProt is a great database, but there limited options for bulk searching. Users can download a lot of entries if they have accessions for specific entries already in hand, and they can perform lots of flexible searches if they can code, but non-coders have no tools for bulk searching.
BulkProt fills this gap by allowing users to specify a list of search terms in a CSV input file, and presents the output of multiple searches as a single consolidated CSV for easy analysis. It also allows users to systematically search for entries that are likely to be equivalent to their search term, but are hard to detect via traditional searches due to inconsistent naming conventions.
Approach
Supplementary Figure 1: The BulkProt pipeline. A CSV-formatted file of UniProt queries is used as input to the BulkProt pipeline. Each search is queried against the UniProt database (via the API) to generate a seed table per search term, containing the entries associated with that term. For each seed table, the protein and gene names are extracted and used to construct a second query, which is again queried against UniProt via the API. The resulting “main search” table will contain all of the proteins and genes associated with the initial seed table search term, but will also contain irrelevant entries as a result of the unsupervised query construction. To remove these, entries in the main search table are dropped if they do not have a gene name that is present in the initial seed search table. Dropped and filtered entries are written to separate tables. The tables for all queries are concatenated to consolidate results. The final output of the BulkProt pipeline includes four CSV files: the seed table, the main table, the filtered table, and the dropped table.
Tutorial
usage: BulkProt [-h] -csv [-e] [-q] [-sd] [-f] [-o]
options:
-h, --help show this help message and exit
-csv, --csv_path (REQUIRED) Full filepath to the CSV-format file containing your queries. (default: None)
-e, --excel_compatible
If set, and you include a sequence field, then sequence will be truncated to 32000 chars (the
maximum number of chars in an excel cell). (default: False)
-q, --quick If set, will run much faster, but a single query within your CSV of queries can only return up
to 500 results. (default: False)
-sd, --seed_only If set, will only perform a seed search. (default: False)
-f, --fields (OPTIONAL) Result fields you would like to store as columns in the output CSV. Full list of
available entries is at https://www.uniprot.org/help/return_fields ("Returned Field"). Input
fields should be seperated by a comma with no spaces (e.g. "field1,field2,..."). For example,
if you only want Entry and Entry Name for each output entry, put "accession,id". (default: acc
ession,id,protein_name,gene_names,organism_name,length,sequence,go_p,go_c,go,go_f,ft_topo_dom,
ft_transmem,cc_subcellular_location,ft_intramem)
-o, --organism_id
(OPTIONAL) Default ID codes for homo sapiens. All seed and main search results will be
specific to this organism. Including a specific organism as part of your csv queries may cause
an error if it conflicts with the organism specified here. See here for all available IDs:
https://www.uniprot.org/taxonomy/?query=* (default: 9606)
Examples
See application note ("Citation") and associated data - https://github.com/Tim-Kirkwood/BulkProt_application_note.
Citation
TBC
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bulkprot-0.0.1.tar.gz.
File metadata
- Download URL: bulkprot-0.0.1.tar.gz
- Upload date:
- Size: 12.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
613573fd3259a261b5d3a014d7c710ad89aa65dc16a425c521fd73415426eac4
|
|
| MD5 |
6a8d55325dd2384ff8870b94ff96e46a
|
|
| BLAKE2b-256 |
fccd3f06e445e659b4e6b88d171af168e6d4f0bbda4bb2d9284284df64aebd1c
|
File details
Details for the file bulkprot-0.0.1-py3-none-any.whl.
File metadata
- Download URL: bulkprot-0.0.1-py3-none-any.whl
- Upload date:
- Size: 13.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79249812a94859cccfae22e9c96de3fe3b25d02bc7bfad7d9c749187d6fdb451
|
|
| MD5 |
6e17d7e2ebb52d5446257106ad86dad8
|
|
| BLAKE2b-256 |
d1fae68c6cc2e1e30d50b077f8b2a3a426ec2de889a7b5daa9213a8573520e6e
|