Bioconductor
Voilà le sujet que l'on va aborder ensemble aujourd'hui. On va voir ce que c'est, à quoi cela sert, comment l'installer et bien-sûr l'utiliser.
Qu'est-ce donc ?
Je décrirais Bioconductor comme un projet participatif. Il est libre d'accès et son développement dépend de ce que la communauté veut bien y apporter. L'objectif est simple, offrir aux biologistes, un ensemble de programmes pour l'analyse de données, faciles à mettre en place et à utiliser. Le support principal choisi est le langage R, qui est à la fois un langage de programmation et un environnement pour l'analyse statistique des données (pour en savoir un peu plus: Les langages de programmation). Bioconductor se présente donc sous forme d'une collection de packages R pour l'analyse de données biologiques (biologie moléculaire principalement). Chaque package est en fait une application que vous installez et chargez dans l'environnement R, vous avez ensuite accès aux fonctions qu'il contient. Nous verrons plus tard comment installer et charger un package Bioconductor.
Pourquoi avoir créé Bioconductor ?
Aujourd'hui la bio-informatique commence à se faire connaître, cela fait un peu plus de dix ans qu'elle se développe et que des étudiants sont spécifiquement formés dans ce domaine. Seulement voilà, il n'y a pas encore de bio-informaticiens dans tous les laboratoires et il y a plein de bonnes raisons à cela (Mais on y arrivera un jour... on y arrivera). Alors les biologistes seuls face à leur données ont décidé, en 2001, de créer un projet pour mettre en commun les scripts qu'ils utilisaient pour faire leurs analyses. Il y a une équipe centrale au Fred Hutchinson Cancer Research Center (FHCRC) et la communauté partout autour du monde.
Désormais plutôt que de garder pour eux le joli script R (ou autres), qui avait pris des mois de développement et qui ne servirait qu'à deux ou trois projets dans le laboratoire, les biologistes/bio-informaticiens peuvent partager leurs travaux pour rendre service à la science et aux autres laboratoires. En plus du partage, il y a la volonté du projet de procurer un outils pour faciliter les analyses de données, mais également assurer la reproductibilité de celles-ci.
Qui développe pour ce projet ?
Bioconductor est mis à jour tout les six mois, nous somme actuellement à la version 2.10. Il y a toujours deux versions disponibles, une stable et une de développement. On ne peut donc pas venir sur le site de Bioconductor, y inclure un code instable et prétendre avoir participé au projet. Il y a des règles à respecter pour voir son package publié, l'une d'elle, par exemple, est de fournir une documentation complète pour l'utilisation du logiciel. Le compilateur vous enverra des messages d'erreurs si une fonction n'est pas référencée dans la documentation ou si une dépendance à un autre package n'est pas prise en compte pendant l'installation. Si votre package se compile sans erreur, il faut ensuite le soumettre aux responsables du projet, qui reviendront vers vous avec de possibles modifications à appliquer. Dans un sens, cela ressemble au processus de publication dans un journal scientifique.
Les personnes qui publient des packages dans Bioconductor sont donc des biologistes ou bio-informaticiens qui ont une certaine expertise dans l'analyse de données et qui souhaitent partager une nouvelle méthode ou l'amélioration d'un algorithme déjà existant. Le nombre de solutions proposées pour l'analyse des micro-array par exemple est assez incroyable. Tout comme aujourd'hui avec les données de séquençage à haut débit, les statistiques appliquées aux micro-array ont évolué au fil des années et on peut avoir l'impression que pour chaque méthode, chaque nouvelle normalisation ou correction d'erreur due à la technique, un package a été publié dans Bioconductor. Cela témoigne bien-sur d'une communauté très active, mais également que pour soutenir la publication, dans un journal, d'une technique d'analyse il est de bon goût de proposer un logiciel pour l'appliquer. Comme la création d'un package est somme toute abordable, même sans grande connaissance de l'informatique, beaucoup de scientifiques se sont tournés vers cette solution. De plus cela assure de toucher un grand nombre de personnes.
Où le trouver, comment l'installer et l'utiliser ?
Toutes les informations pour installer un package Bioconductor sont sur cette page : Installer Bioconductor.
Mais pour résumer l'installation, il vous faut un ordinateur avec R installé et charger biocLite dans l'environnement de travail de R. Il s'agit d'un petit script qui vous permettra d'installer facilement les packages Bioconductor.
Dans R :
1 |
source("http://bioconductor.org/biocLite.R") |
Il suffit ensuite de choisir l'application que vous voulez installer. Si par exemple vous souhaiter installer le package 'easyRNASeq', il vous suffit d'utiliser la commande suivante:
Dans R :
1 |
biocLite('easyRNASeq') |
Un script Bioconductor peut utiliser d'autres packages, les dépendances seront alors installées automatiquement si elles sont absentes de votre système.
Si vous ne souhaitez pas passer par biocLite, parce que vous désirez une ancienne version ou pour n'importe qu'elle autre bonne raison, vous pouvez installer les applications de Bioconductor comme n'importe quel autre package R.
Dans R :
1 |
install.packages("chemin/vers/monpackage") |
Une fois le package installé vous pourrez le charger dans R à chaque nouvelle session de travail avec la commande suivante :
Dans R:
1 |
library("monpackage") |
Pour obtenir plus d'information sur le package et sur ses fonctions vous pouver utiliser les commandes suivantes :
1 2 |
packageDescription('monpackage') ?nomDeLaFonction |
Vous pouvez trouver la liste de tous les packages disponibles (554 dans la dernière version) sur le site internet de Bioconductor (Liste des packages), on y retrouve des outils pour la normalisation des données (limma, babar), le calcul de la couverture d'une expérience de séquençage (easyRNASeq, htSeqTools), l'annotation de séquences et la consultation de banques de données (AnnotationDbi, GO.db) et bien plus encore. L'équipe du site propose également quelques exemples de workflows pour l'analyse de vos données ( Exemples d'analyses ).
----------
J'espère vous avoir convaincu de l'utilité de Bioconductor si vous avez des données à analyser, ou au moins de vous avoir donné envie d'aller jeter un coup d'œil, au cas où l'application miracle que vous cherchiez se trouve dans la liste. La communauté est vivante, vous pouvez vous inscrire à la liste de diffusion, de plus chaque package a une personne attitrée pour répondre à vos éventuelles questions. Je ne garantis pas que tous les développeurs soient à votre disposition, mais si vous n'obtenez pas de réponses vous pouvez toujours aller sur ce super forum seqanswers, j'y ai même déjà vu plusieurs développeurs répondre à des questions sur leurs packages.
nahoy
juin 18, 2012 à 6:57
Très bon package R. Un truc que j'aime bien, c'est qu'il est open source (comme dit dans le titre). Nous pouvons aller voir certains algorithmes et étudier leur implémentation, au besoin les modifier un peu pour les adapter. C'est aussi un bon moyen pour vérifier qu'un outil est opérationnel, car testé par plusieurs personnes.
Natir
juin 18, 2012 à 9:49
J'ai une petit interrogation après ce que j'ai lue sur cette page (point Open source). Bioconductor, ne serai pas open source mais carrément libre (ça ne me pose pas de problèmes, je préfère même). Les 3 licences autorisées (Artistic 2.0, GPL2, et BSD) sont des licences libres et non open source.
Je m’interroge donc sur le fait qu'ils utilisent le terme d'open source plutôt que libre, cette question n'a peut-être pas sa place ici (mais plutôt sur leurs mailing list), mais si quelqu'un qui a connaissance de ces raisons passe ici, peut-il les communiquer, merci.
nahoy
juin 18, 2012 à 10:04
Ces licences sont des licences open-sources. Tu peux avoir une liste de toute les licences approuvées par l' "Open Source Initiative" ici.
Natir
juin 18, 2012 à 10:23
Je dirais plutôt que ce sont des licences libres http://www.gnu.org/licenses/license-list.fr.html
nahoy
juin 18, 2012 à 10:47
Oui tu as raison aussi. Mais l'une n’exclue pas l'autre... Tu peux connaître la différence entre licence libre et open source là .
Ce sont deux consortiums différent avec des définitions différentes, une licence peut satisfaire les deux définitions. Dire que la licence Artistic-2.0 est "libre" et pas "open-source" est faux.
Natir
juin 18, 2012 à 11:03
Je suis au faîte des différences entre le libre et l'open source.
Je n'ai jamais dit que l'un exclu l'autre je dirais plutôt que l'open source et le Libre sont différents et que parfois on peut être open source sans être libre.
Ce qui me gène c'est qu'ils ne disent pas qu'ils sont libres alors qu'ils le sont.
Ils ont peur du mot ?
MRR
juin 18, 2012 à 12:36
Qué "un peu plus de 10 ans" ? Eh les jeunes, les matrices de Dayhoff datent de 1965, Swissprot de 1986, et le journal CABIOS est devenu "Bioinformatics" en 1997.
akira
juin 18, 2012 à 12:43
^^ Pas d'affolage, je parle pas ici de l'apparition de la bioinformatique ou du besoin d'informatique en biologie qui comme tu le fais justement remarquer date de bien plus que 10. Mais à ma connaissance les formations universitaire en bioinformatique et la reconnaissance de la bioinformatique comme un domaine à part entière ne date pas de si longtemps que ça.
Donc oui la bioinformatique date de plus de 10 ans, mais ne peut-on pas dire que ça reconnaisance date d'une dizaine d'années (environ) seulement?
Yoann M.
juin 18, 2012 à 1:13
J'allais répondre à peu prêt la même chose.
C'est vrai que les formations ont fleuries c'est dix dernières années et que la bioinformatique semble bien avoir le vent en poupe, mais pourtant cela ne date pas d'hier 🙂
MIMI
janvier 28, 2016 à 12:02
c'est la différences entre bioconducteur et le cbioportale ?!