Protein interactions network

Protein interactions network#

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 helpers
from ptm_pose.analyze import interactions
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings("ignore")


#load example differential inclusion data
spliced_ptms = helpers.load_example_data(spliced_ptms = True)

interactions = interactions.protein_interactions(spliced_ptms)
interactions.get_interaction_network()

interactions.network_data.head()
334 PTMs removed due to insignificant splice event (p < 0.05, dpsi >= 0.2): (69.01%)
Final number of PTMs to be assessed: 150
PhosphoSitePlus interaction data found and added
PhosphoSitePlus enzyme interaction data found and added
No PTMs with enzyme information from PhosphoSitePlus, skipping
No interaction data found for PTMcode, skipping
No interaction data found for PTMInt, skipping
No interaction data found for RegPhos, skipping
No interaction data found for DEPOD, skipping
No interaction data found for ELM, skipping
No interaction data found for OmniPath, skipping
Modified Gene Interacting Gene Residue Type Source dPSI Regulation Change
0 TSC2 YWHAE S981 INDUCES PhosphoSitePlus -0.219 -
1 TSC2 YWHAZ S981 INDUCES PhosphoSitePlus -0.219 -


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()
Degree Degree Centrality Closeness Betweenness
TSC2 2 1.0 1.000000 1.0
YWHAE 1 0.5 0.666667 0.0
YWHAZ 1 0.5 0.666667 0.0


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: YWHAE, YWHAZ
Number of interactions: 2 (Rank: 1)
Centrality measures -    Degree = 1.0 (Rank: 1)
                         Betweenness = 1.0 (Rank: 1)
                         Closeness = 1.0 (Rank: 1)

We can also visualize the network…

interactions.plot_interaction_network(interacting_node_size = 10)
plt.tight_layout()
plt.show()
plot protein interactions

…and the centrality of proteins in the network

interactions.plot_network_centrality(centrality_measure='Degree')
plt.tight_layout()
plt.show()
plot protein interactions

Total running time of the script: (0 minutes 0.379 seconds)

Gallery generated by Sphinx-Gallery