Skip to main content

Motivation

UniProt is a great database, but there are limited options for bulk searching. Users can download a lot of entries, if they have the associated accessions already in hand, and they can perform lots of flexible searches if they can code. However, 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

Metadata

Release files for BulkProt 0.0.1.post1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for BulkProt 0.0.1.post1
File Size Uploaded
bulkprot-0.0.1.post1.tar.gz 12.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for BulkProt 0.0.1.post1
File Interpreter ABI Platform
bulkprot-0.0.1.post1-py3-none-any.whl Python 3 none any Details

Total release size: 26.0 kB

Release files / bulkprot-0.0.1.post1.tar.gz

Download URL bulkprot-0.0.1.post1.tar.gz
Size 12.6 kB
Tags Source
SHA-256 checksum
How to use checksums
238f240507080cc97bb0c935f27a538f3d58d789442b5428e3a3755aab00f75c
BLAKE2b-256 checksum
How to use checksums
59220e543ee1cac233e530c914ff31cef7ca1628a2c72a75e05c86e42e31368f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.15

Release files / bulkprot-0.0.1.post1-py3-none-any.whl

Download URL bulkprot-0.0.1.post1-py3-none-any.whl
Size 13.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fbc086cf934a65a69bdbf66b4c77e1839aabdb34ca051d129845efc6c3c9d2c5
BLAKE2b-256 checksum
How to use checksums
d4dd5ffc547ed3bdd4939249892803fcfcf213c46c5b686cd68e499dc1baf947
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.15

Release history Release notifications | RSS feed

This release

0.0.1.post1 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page