un script Perl et un script R pour sparcc
gilles.hunault "at" univ-angers.fr
Table des matières cliquable
5. Références
1. But du script
Le logiciel mothur fournit, via la commande sparcc, la possibilité d'estimer "proprement" des corrélations pour des données dites compositionnelles qui mettent en jeu des abondances absolues ou relatives. Sauf erreur de notre part, mothur ne fournit aucun moyen simple de visualiser ces corrélations. Nous avons donc écrit un script Perl et uun script R pour utiliser les fichiers produits par mothur. Le script R utilise le package qgraph pour produire une représentation graphiques de ces corrélations. Il doit donc être installé sur votre machine afin de pouvoir utiliser ces scripts.
2. Paramètres du script
Le script perl utilise 5 paramètres dont seuls les 2 premiers sont obligatoires. En voici la liste :
fcor : fichier des corrélations calculées par mothur, son nom se termine en général par .sparcc_correlation.
fpval : fichier des pvalues calculées par mothur, son nom se termine en général par .sparcc_pvalue.
pvalmin : valeur minimale de pvalue assocée à une corrélation pour que cette corrélation soit retenue. Valeur par défaut : 0.01 .
cortrace : valeur minimale de corrélation pour que cette corrélation soit tracée. Valeur par défaut : 0.3 .
fclasses : fichier des classes, qui permet dattribuer une même couleur aux taxons d'une même classe. La ligne 1 du fichier doit contenir les deux mots Group Class.
Si on ne renseigne pas le fichier des classes, le script trace les corrélations avec les noms de taxons. Par contre, avec un fichier de classes fourni, le script fournit des ronds de couleur pour chaque classe. Voir les exemples ci-dessous pour plus de détails.
3. Exemples d'utilisation
Exemple 1
On dispose du fichier de corrélations suivant, nommé xmp_cor.txt produit par mothur, dont le contenu est
"OTUa" "OTUb" "OTUc" "OTUd" "OTUe" "OTUf" "OTUg" "OTUh" "OTUi" "OTUj" "OTUa" 1 -0.167666 0.308036 0.655041 0.016877 0.104395 -0.177954 -0.007692 -0.266147 0.062364 "OTUb" -0.167666 1 -0.029404 -0.138373 0.019193 -0.046791 0.129863 -0.017883 0.08432 -0.039181 "OTUc" 0.308036 -0.029404 1 0.282972 0.02983 -0.174005 -0.090693 0.008593 -0.15105 -0.053049 "OTUd" 0.655041 -0.138373 0.282972 1 -0.034862 -0.020893 -0.036691 0.084186 -0.133478 -0.052479 "OTUe" 0.016877 0.019193 0.02983 -0.034862 1 0.221 -0.001997 0.221782 0.025644 -0.113551 "OTUf" 0.104395 -0.046791 -0.174005 -0.020893 0.221 1 -0.066739 0.110803 -0.056581 0.286269 "OTUg" -0.177954 0.129863 -0.090693 -0.036691 -0.001997 -0.066739 1 0.016924 0.09859 -0.107839 "OTUh" -0.007692 -0.017883 0.008593 0.084186 0.221782 0.110803 0.016924 1 -0.000929 -0.028277 "OTUi" -0.266147 0.08432 -0.15105 -0.133478 0.025644 -0.056581 0.09859 -0.000929 1 -0.084185 "OTUj" 0.062364 -0.039181 -0.053049 -0.052479 -0.113551 0.286269 -0.107839 -0.028277 -0.084185 1On dispose également du fichier de pvalues nommé xmp_pval.txt également produit par mothur, dont le contenu est
"OTUa" "OTUb" "OTUc" "OTUd" "OTUe" "OTUf" "OTUg" "OTUh" "OTUi" "OTUj" "OTUa" 1 0.001 0 0 0.465 0.093 0 0.38 0 0.222 "OTUb" 0.001 1 0.202 0 0.366 0.097 0.002 0.191 0.006 0.115 "OTUc" 0 0.202 1 0 0.328 0.007 0.018 0.484 0 0.206 "OTUd" 0 0 0 1 0.253 0.367 0.177 0.098 0 0.234 "OTUe" 0.465 0.366 0.328 0.253 1 0 0.42 0 0.28 0.036 "OTUf" 0.093 0.097 0.007 0.367 0 1 0.042 0.047 0.005 0 "OTUg" 0 0.002 0.018 0.177 0.42 0.042 1 0.361 0 0.003 "OTUh" 0.38 0.191 0.484 0.098 0 0.047 0.361 1 0.304 0.273 "OTUi" 0 0.006 0 0 0.28 0.005 0 0.304 1 0 "OTUj" 0.222 0.115 0.206 0.234 0.036 0 0.003 0.273 0 1On peut se contenter d'exécuter le script avec ces deux fichiers comme seuls paramètres :
perl sparcc_graph.pl xmp_cor.txt xmp_pval.txt
et on voit alors à l'écran
1 / 2 Vérification des paramètres fichier de corrélations : xmp_cor.txt PRESENT. fichier de p-values : xmp_pval.txt PRESENT. seuil pour corrélation retenue : non indiqué. On utilise la valeur par défaut : 0.01 corrélation pour tracé : non indiqué. On utilise la valeur par défaut : 0.3 fichier des classes : non indiqué. 2 / 2 Transformation et tracé source('sparcc_graph.r') sparccQgraph('xmp_cor.txt','xmp_pval.txt',0.01,0.3,'','sparcc_graph.png') en principe le fichier sparcc_graph.png contient le graphique désiré. -- fin normale du script sparcc_graph.plLe graphique produit, nommé sparcc_graph.png est semblable à celui-ci
Exemple 2
On suppose qu'on dispose maintenant du fichier de classes xmp_classes.txt construit sous éditeur de textes, et dont le contenu est
Group Class "OTUa" grpA "OTUb" grpA "OTUc" grpB "OTUd" grpB "OTUe" grpB "OTUf" grpB "OTUg" grpB "OTUh" autre "OTUi" autre "OTUj" autreA l'aide de la commande
perl sparcc_graph.pl xmp_cor.txt xmp_pval.txt 0.05 0.01 xmp_classes.txt
on produit alors un graphique produit semblable à
4. Téléchargement
L'archive sparcc_graph.zip contient les fichiers sparcc_graph.pl et sparcc_graph.r. Sous Linux, vous pouvez rapatrier l'archive et la décompresser via les commandes
wget http://forge.info.univ-angers.fr/~gh/Metaseed/sparcc_graph.zip unzip sparcc_graph.zip
5. Références
mothur http://www.mothur.org/ mothur sparcc http://www.mothur.org/wiki/Sparcc sparcc article http://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1002687 PDF sparcc site https://bitbucket.org/yonatanf/sparcc sparcc/comet http://psbweb05.psb.ugent.be/conet/microbialnetworks/sparcc.php
Retour à la page principale de (gH)