Poursuivant l'apprentissage des pandas avec la chimioinfomatique, "Matplotlib" est l'une des bibliothèques représentatives de Python avec le thème de la lipidomique (analyse complète des lipides). Je vais vous expliquer. Nous expliquerons principalement des exemples pratiques de chimioinfomatique, donc si vous souhaitez vérifier les bases, veuillez lire l'article suivant avant de lire cet article.
Les chercheurs des sociétés pharmaceutiques ont résumé Matplotlib
Matplotlib est une bibliothèque pour dessiner des graphiques. Il peut être utilisé pour visualiser les tendances des données.
Tout d'abord, chargez la bibliothèque avec ʻimport. Si vous utilisez un bloc-notes Jupyter, vous pouvez dessiner un graphique sur votre bloc-notes en écrivant
% matplotlib inline`.
Considérons maintenant l'analyse de la relation entre le nombre d'atomes de carbone et les doubles liaisons des acides gras et leurs propriétés physiques.
%matplotlib inline
import matplotlib.pyplot as plt
abbreviations = ['FA 12:0', 'FA 14:0', 'FA 16:0', 'FA 18:0', 'FA 20:0', 'FA 22:0'] #Abréviation des espèces moléculaires d'acides gras
Cns = [12, 14, 16, 18, 20, 22] #Nombre d'atomes de carbone (longueur de chaîne) d'acide gras
logPs = [3.99, 4.77, 5.55, 6.33, 7.11, 7.89] #Valeur LogPow des espèces moléculaires d'acides gras
plt.scatter(Cns, logPs) #Créer un diagramme de dispersion
plt.xlabel('Cn') #étiquette de l'axe des x
plt.ylabel('logPow') #étiquette de l'axe y
plt.savefig('logP_saturated-fatty-acids.png') #Enregistrez le diagramme de dispersion en tant que fichier image (fichier PNG)
plt.show() #Afficher le diagramme de dispersion terminé
Dans l'exemple ci-dessus, la relation entre le nombre d'atomes de carbone "Cns" et logPow "logPs" est illustrée pour les acides gras saturés (espèces moléculaires d'acides gras sans doubles liaisons dans la chaîne carbonée). logPow est le «coefficient de partage d'octanol de l'eau» et indique l'ampleur de l'hydrophobicité du composé. Cette fois, la valeur de logPow faisait référence à LIPID MAPS. Comme vous pouvez le voir, à mesure que le nombre d'atomes de carbone augmente, la valeur de logPow augmente également. Cela indique que lorsque le nombre d'atomes de carbone augmente, l'hydrophobicité de la molécule augmente.
Considérons la même chose pour les acides gras insaturés (espèces grasses avec des doubles liaisons dans la chaîne carbonée).
%matplotlib inline
import matplotlib.pyplot as plt
abbreviations = ['FA 18:1', 'FA 18:2', 'FA 18:3', 'FA 18:4']
Uns = [1, 2, 3, 4] #Nombre de doubles liaisons de la chaîne carbonée de l'acide gras (degré d'insaturation)
logPs = [6.11, 5.88, 5.66, 5.44]
plt.scatter(Uns, logPs)
plt.xlabel('Un')
plt.ylabel('logPow')
plt.savefig('logP_C18-fatty-acids.png')
plt.show()
Cette fois, le nombre d'atomes de carbone est le même et montre comment logPow change lorsque le nombre de doubles liaisons (degré d'insaturation) est modifié. On peut voir que lorsque le nombre de doubles liaisons augmente, l'hydrophobicité de la molécule diminue.
Ensuite, pensez à illustrer la concentration intracellulaire en acides gras dans une expérience * in vitro *.
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
concs_ctrl = [0.1, 0.05] #Concentrations d'acide arachidonique et d'acide docosahexaénoïque dans les expériences de contrôle
concs_cmpd_low = [0.05, 0.07] #Concentrations d'acide arachidonique et d'acide docosahexaénoïque dans les expériences d'addition de composés (faible dose)
concs_cmpd_high = [0.01, 0.08] #Concentrations d'acide arachidonique et d'acide docosahexaénoïque dans les expériences d'addition de composés (dose élevée)
x = np.arange(len(concs_ctrl)) #Nombre d'acides gras à afficher
bar_width = 0.3 #Largeur du graphique à barres
plt.bar(x, concs_ctrl, width=bar_width, align='center') #Graphique à barres des conditions de contrôle
plt.bar(x+bar_width, concs_cmpd_low, width=bar_width, align='center') #Graphique à barres des conditions lors de l'ajout du composé (faible dose)
plt.bar(x+bar_width*2, concs_cmpd_high, width=bar_width, align='center') #Graphique à barres des conditions lors de l'ajout du composé (dose élevée)
plt.xticks(x+bar_width, ['AA', 'DHA']) #nom des données de l'axe des x
plt.ylabel('Concentration (uM)')
plt.legend(('Control', 'Compound X 0.1uM', 'Compound X 1 uM')) #Guide d'utilisation
plt.savefig('fatty acid concs.png')
plt.show()
Ici, nous montrons comment les concentrations intracellulaires d'acide arachidonique (AA) et d'acide docosahexaénoïque (DHA) changent dans trois types de conditions expérimentales. Par ailleurs, en termes de nombre d'atomes de carbone et de nombre de doubles liaisons, AA est «FA 20: 4» et DHA est «FA 22: 6». Vous pouvez voir que lorsque le composé X est ajouté aux cellules, la production d'AA est supprimée et la production de DHA est progressivement augmentée de manière dose-dépendante. Dans cet exemple, le graphique est créé en tant que données expérimentales avec n = 1 et aucune barre d'erreur n'est jointe.
Ici, j'ai expliqué Matplotlib, en me concentrant sur les connaissances pratiques qui peuvent être utilisées en chimioinfomatique. Revoyons à nouveau les principaux points.
matplotlib.pyplot.scatter
.matplotlib.pyplot.bar
.Ensuite, l'article suivant explique scikit-learn.
Apprentissage Scikit-learn avec chimio-automatique
Recommended Posts