R package to download and clean references and prepare annotations
charlesjb / anno Goto Github PK
View Code? Open in Web Editor NEWLicense: Other
License: Other
prepare_anno
pour tenir compte des derniers changementLe fichier de métadonnées doit contenir tous les paramètres de création de la BD:
Ajouter une option pour le téléchargement des GTF.
Trouver le bon lien pour chaque organismes sur: http://useast.ensembl.org/info/data/ftp/index.html/
Télécharger le fichier avec le bon nom, voir par exemple: https://github.com/CharlesJB/anno/blob/master/R/prepare_anno.R#L115-L116
Ajouter un badge dans le README pour le codecov
I.e.: Homo sapiens, homo sapiens, human, hs, humain...
La fonction extract_anno
est appelée trois fois:
Déjà, à la ligne 119 et 123, la fonction extract_anno
est appelée sur exactement les mêmes données. On ne devrait pas appeler cette fonction sur les données nettoyées car la seule différence avec les données brutes est au niveau des nom (le identifiants ensembl devraient être identiques).
De plus, étant donnée que l'opération de mapIds
est relativement longue, on devrait éviter de la répéter plusieurs fois. On devrait plutôt faire comme aux lignes 174 à 176 où on fait un sous-ensemble des données originales.
extract_anno
qui ne sont pas sur les données brutes soit par un filtre (i.e.: la fonction dplyr::filter
) ou bien en utilisant un indice comme pour les lignes 174 à 176.save_anno_resuts
pour s'assurer que les identifiants sont identiques pour le fasta et pour l'annotation (on doit retrouver exactement les mêmes identifiants, exactement dans le même ordre).DESCRIPTION
.Tester si anno peut être installé depuis gitlab -- et si oui le faire aussi pour le package rnaseq
Regarder s'il y a des erreurs stopifnot
qui ne sont pas clairs et remplacer par stop
au besoin.
Le code ne fonctionne plus avec Rattus norvegicus car il y a une nouvelle version.
Dans le code présentement, il utilise Rnor_6.0: https://github.com/CharlesJB/anno/blob/master/R/prepare_anno.R#L251
Sur Ensembl, c'est maintenant mRatBN7.2: http://ftp.ensembl.org/pub/release-108/fasta/rattus_norvegicus/cdna/
Il faut:
Il faudrait donner au paramètre org
la valeur par défaut "Ensembl".
Une fois le nettoyage des identifiants complété (i.e.: retirer le # de version), valider qu'il n'y a pas de duplicat.
On enlève le numéro de version ici: https://github.com/CharlesJB/anno/blob/master/R/prepare_anno.R#L124
Il faut donc valider qu'il n'y a pas de duplicat avant de sauvegarder ici: https://github.com/CharlesJB/anno/blob/master/R/prepare_anno.R#L131
Ajouter une valeur NA
à utiliser par défaut pour le paramètre release
dont le comportement sera d'aller chercher la release la plus récente de l'annotation.
Selon la ligne 162, il y a des séquences de taille 0 qu'il faut ignorer. À priori, il me semble qu'il ne devrait pas y avoir de séquences de taille 0 dans la base de données de référence. Il faudrait donc remplacer par un stopifnot
ou bien par une commande équivalente.
Si jamais il y a vraiment des séquences de taille 0 dans les bases de données, il faudrait documenter le phénomène avant avant de conserver le code tel qu'il est présentement.
Pour le moment les sorties sont sauvegardées dans le répertoire courant, a terme il peut être intéressant de créer un argument path permettant de sauvegarder les sorties dans un dossier au choix. le défaut de ce path restera ".", le dossier courant.
A faire :
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.