M1 Traitement de Donnees Biologiques - TP Intro R
From silico.biotoul.fr
(Created page with 'Au cours de ce TP, nous allons utiliser le logiciel '''R''' à travers une interface particulière : '''RStudio'''. Cette interface permet d'éditer des scripts en R ainsi qu'en …')
Newer edit →
Revision as of 15:49, 23 August 2016
Au cours de ce TP, nous allons utiliser le logiciel R à travers une interface particulière : RStudio. Cette interface permet d'éditer des scripts en R ainsi qu'en langage Markdown que nous allons utiliser pour la rédaction de rapports scientifiques. L'interface se compose en plusieurs parties (cf. capture d'écran ci-dessous) :
- en haut à gauche : édition de fichiers et scripts, et visualisation des données tabulées
- en bas à gauche : exécution de code R dans une console
- en haut à droite : les objets et variables chargés en mémoire
- en bas à droite : plusieurs onglets : accès aux fichiers, graphiques, librairies disponibles, aide, et visualiseur de rapports scientifiques
```{r}
- Téléchargements: R, Rstudio (requires R2.11.1)
- http://www.r-project.org/
- https://www.rstudio.com/home/
- Démarrer une session / charger un script
- Créer un répertoire de travail sur le bureau, dans lequel se trouvent
- les fichiers de données et les fichiers que vous allez éventuellement éditer avec R.
- - Lancer Rstudio --> Session --> set working directory --> aller jusqu'au dossier de travail
- - ouvrir un script (déjà présent dans le répertoire) ou "new script"
- - attente de commande: control R pour copier-coller la commande
- - # = insérer des commentaires
- - flèches haut et bas = naviguer dans les commandes déjà lancées
- Obtenir de l'aide sur une fonction
- onglet HELP
- sous R, on tape par exemple ?mean
- Calculs et Objets de stockage sous R
- calculer la somme des 3 premiers entiers naturels
1+2+3
- calculer la fonction exponentielle du nombre 10
exp(10)
- créer un objet que vous nommerez "my_object", et qui contient la commande précédente
my_object = exp(10)
- logique: "est-ce que mon objet est égal/différent de 2"?
my_object == 2 my_object != 2
- un objet peut contenir du texte
my_object="biology" my_object
- Vecteurs: création, exploration et manipulation
- créez un vecteur "x" contenant les valeurs 2,3,5,8,4,6 rassemblées avec la commande c()
x = c(2,3,5,8,4,6) ; x
- donnez sa longueur avec la commande length
length(x)
- affichez la deuxième valeur de x (utiliser x[])
x[2]
- exploration suivant un critère: oui/non; indices; valeurs
x>4;which(x>4);x[x>4]
- donner l'inverse de x
1/x
- Importation de tableaux de données sous R
- au préalable, on rentre les données sous excel
- on enregistre en format "txt, séparateur = tabulation""
- éviter de mettre des espaces dans les noms de variables, ainsi que des accents
- sous R:
- on utilise la fonction "read.table":
- - on spécifie s'il y a un en-tête (nom des variables en première ligne): "header=T" (header="en-tête")
- - on spécifie le séparateur (sep=" ": espace, sep=";": point-virgule, sep="\t": tabulation)
- - si la décimale est une virgule alors dec=","
- on ouvre le fichier "croissance_plantes.txt":
croissance = read.table("croissance_plantes.txt", sep="\t",header=TRUE)
- on affiche le tableau
croissance
- pour pouvoir ensuite accéder aux variables simplement en donnant leurs noms
attach(croissance)
- pour afficher les noms des variables
names(croissance)
- Exportation d'objets R
- nous souhaitons par exemple exporter une partie du tableau précédent
- ==> les données relatives aux "pyrénées"
my_data=croissance[origine_geo=="pyr",]
- on exporte avec la fonction
write.table(my_data,"my_data_exported.txt",quote=F,col.names= T,row.names = F, sep = "\t")
- Statistiques basiques sur une variable qualitative
- nombre d'individus par catégorie
summary(origine_geo)
- Fonction graphique sur une variable qualitative
- nombre d'individus par catégorie
pie(summary(origine_geo),main="origines géographique des plantes") barplot(summary(origine_geo),main="origines géographique des plantes",las=3)
- Statistiques basiques sur une variable quantitative
- moyenne, variance (correction "n-1"), écart-type
mean(taille); var(taille); sd(taille)
- valeur minimale, maximale
min(taille); max(taille)
- quantiles
median(taille); quantile(taille); quantile(taille,c(0.5,0.95,0.99))
- la commande summary() résume l'objet
summary(taille)
- Fonction graphique sur une variable quantitative
- distribution de la taille des plantes récoltées, sur des graphiques séparés
- découper une fenêtre graphique (ici: "2 lignes, 2 colonnes") pour positionner plusieurs graphiques
par(mfrow=c(2,2)) hist(taille,xlim=c(40,90),xlab="taille (cm)",ylab="fréquence",freq=T,main="histogramme de la taille des plantes",col="orange") boxplot(taille,main="boxplot de la taille des plantes",ylab="taille") plot(taille~origine_geo,las=3) stripchart(taille~origine_geo,las=1)
- Fonction graphique sur deux variables quantitatives mesurées sur les mêmes individus
- nuage de points: taille versus poids
x11() # nouvelle fenêtre graphique plot(taille,poids,col="red",pch=20)
- Sauvegarde et/ou exportation d'un graphique
- dans l'onglet plot, au choix:
- - Copy to Clipboard ==> coller dans word/powerpoint.
- - Save as Image (TIFF,JPEG,...)
- - Save as PDF
- exportez le graphique précédent
```