Note
Go to the end to download the full example code.
Identify protein interactions that may be impacted by splicing of PTMs#
Post translational modifications (PTMs) often facilitate protein interactions, either through direct binding of domains specific to that particular modification (e.g. SH2 domains binding to phosphorylated tyrosines) or through allosteric effects that change the conformation of the protein to either enhance or disrupt interactions. We provide functions to annotate spliced PTMs with relevant protein interactions and to identify key PTMs that may disrupt protein interaction networks.
Currently, we provide functions to process and analyze protein interaction data from PhosphoSitePlus, PTMInt, and PTMcode. We can also include enzyme-specific interactions (such as kinase substrate interactions through PhosphoSitePlus and RegPhos). First, we need to annotate the spliced PTMs with protein interactions (see rest of documentation for how to do this). Then, we can process the interactions across the different databases using the protein_interactions class to identify key PTMs that may disrupt protein interaction networks.
from ptm_pose import analyze
import pandas as pd
# Load spliced ptm and altered flank data
spliced_ptms = pd.read_csv('spliced_ptms.csv')
interactions = analyze.protein_interactions(spliced_ptms)
interactions.get_interaction_network()
interactions.network_data.head()
PhosphoSitePlus regulatory site data found and added
Combined kinase-substrate data found and added
PTMcode data found and added
PTMInt data found and added
ELM data found and added
We can also calculate interaction stats to identify proteins that are most impacted or relevant to spliced PTMs and the protein interaction network
interactions.get_interaction_stats()
interactions.network_stats.head()
If we want to focus on a specific protein, we can summarize information about a single protein in the network. In this case, let’s look at TSC2, which loses pS981 upon ESRP1 knockdown
interactions.summarize_protein_network(protein = 'TSC2')
Decreased interaction likelihoods: AKT1, SGK1, YWHAE, YWHAZ
Number of interactions: 4 (Rank: 14)
Centrality measures - Degree = 0.024691358024691357 (Rank: 14)
Betweenness = 0.0004600874166091557 (Rank: 28)
Closeness = 0.024691358024691357 (Rank: 126)
We can also visualize the network…
interactions.plot_interaction_network(interacting_node_size = 10)
…and the centrality of proteins in the network
interactions.plot_network_centrality(centrality_measure='Degree')
Total running time of the script: (0 minutes 1.096 seconds)