Skip to main content

A utility package that can be used to upload data to a curtain backend server.

Project description

CurtainUtils

A utility package for converting different MS output files into a format usable by Curtain (https://curtain.proteo.info) and CurtainPTM (https://curtainptm.proteo.info)

Installation

The package can be installed using the following command. pip install curtainutils

Convert MSFragger PTM single site output to CurtainPTM input

This script should be used to convert a differential analysis file that contains the index column and peptide column. The index column should also be the original index column output by MS-Fragger that contains both the Accession ID as well as position of the PTM within the protein sequence.

Usage:

msf-curtainptm -f <MSFragger PTM single site output file> -i <index column with site information> -o <output file> -p <peptide column> -a <fasta file> 

Convert DIA-NN PTM output to CurtainPTM input

This script should be used to convert a differential analysis file that contains the following column "Modified.Sequence", "Precursor.Id", "Protein.Group" from the pr report file by combining the file with the Report file which contains the column "PTM.Site.Confidence".

diann-curtainptm -p <differential analysis file> -r <report file> -o <output file> -m <modification_of_interests from the Modified.Sequence column>

Convert Spectronaut output to Curtain input

This script should be used to convert a differential analysis file that contains the "PTM_collapse_key" and "PEP.StrippedSequence" columns from the original Spectronaut output.

spn-curtainptm -f <differential analysis file> -o <output file>

Submit data to a Curtain server

Usage example:

from curtainutils.client import CurtainClient

de_file = r"differential-file-path"
raw_file = r"raw-file-path"

fc_col = "foldchange-column-name"
transform_fc = False
transform_significant = False
reverse_fc = False
p_col = "significance-column-name"

comp_col = ""  # Leave empty if no comparison column is used
comp_select = []  # Leave empty if no comparison column is used

primary_id_de_col = "primary-id-column-name-in-differential-file"
primary_id_raw_col = "primary-id-column-name-in-raw-file"

sample_cols = ["4Hr-AGB1.01", "4Hr-AGB1.02", "4Hr-AGB1.03", "4Hr-AGB1.04", "4Hr-AGB1.05", "24Hr-AGB1.01",
               "24Hr-AGB1.02", "24Hr-AGB1.03", "24Hr-AGB1.04", "24Hr-AGB1.05", "4Hr-Cis.01", "4Hr-Cis.02", "4Hr-Cis.03",
               "24Hr-Cis.01", "24Hr-Cis.02", "24Hr-Cis.03"]
c = CurtainClient("curtain-backend-url")
payload = c.create_curtain_session_payload(
    de_file,
    raw_file,
    fc_col,
    transform_fc,
    transform_significant,
    reverse_fc,
    p_col,
    comp_col,
    comp_select,
    primary_id_de_col,
    primary_id_raw_col,
    sample_cols
)

package = {
    "enable": "True",
    "description": payload["settings"]["description"],
    "curtain_type": "TP",
}

result = c.post_curtain_session(package, payload)
print(result)

Submit data to a CurtainPTM server

from curtainutils.client import CurtainClient

de_file = r"differential-file-path"
raw_file = r"raw-file-path"

fc_col = "foldchange-column-name"
transform_fc = False
transform_significant = False
reverse_fc = False
p_col = "significance-column-name"
comp_col = ""  # Leave empty if no comparison column is used
comp_select = []  # Leave empty if no comparison column is used
primary_id_de_col = "primary-id-column-name-in-differential-file"
primary_id_raw_col = "primary-id-column-name-in-raw-file"
sample_cols = []
peptide_col = "peptide-sequence-column-name"
acc_col = "protein-accession-column-name"
position_col = "position-in-protein-column-name"
position_in_peptide_col = "position-in-peptide-column-name"
sequence_window_col = "sequence-window-column-name"
score_col = "score-column-name"

c = CurtainClient("curtain-backend-url")

payload = c.create_curtain_ptm_session_payload(
    de_file,
    raw_file,
    fc_col,
    transform_fc,
    transform_significant,
    reverse_fc,
    p_col,
    comp_col,
    comp_select,
    primary_id_de_col,
    primary_id_raw_col,
    sample_cols,
    peptide_col,
    acc_col,
    position_col,
    position_in_peptide_col,
    sequence_window_col,
    score_col
)

package = {
    "enable": "True",
    "description": payload["settings"]["description"],
    "curtain_type": "PTM",
}

result = c.post_curtain_session(package, payload)

Project details


Download files

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

Source Distribution

curtainutils-0.1.14.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

curtainutils-0.1.14-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file curtainutils-0.1.14.tar.gz.

File metadata

  • Download URL: curtainutils-0.1.14.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.8 Windows/10

File hashes

Hashes for curtainutils-0.1.14.tar.gz
Algorithm Hash digest
SHA256 eb7d157c5364f107023f708f0656651f074cc3d0fec0a9e0a6fab662469850f7
MD5 2b8954d50f9d7cfc0c8c32379aad4d71
BLAKE2b-256 fe728f741c5cf99b0f539aa46ba436960a3df1f9c5afefce22912c5d4917c6ce

See more details on using hashes here.

File details

Details for the file curtainutils-0.1.14-py3-none-any.whl.

File metadata

  • Download URL: curtainutils-0.1.14-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.8 Windows/10

File hashes

Hashes for curtainutils-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 e10df3ac3e397c652cfd3827b6cfb864c37f6285483818dfafc088b6f28e8995
MD5 f8658ee63497a9afd66bea7047b0a852
BLAKE2b-256 892572c61aa639699835049010564288c4ea0b18a5d58c49cf6c7ae5ffea68fd

See more details on using hashes here.

Supported by

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