Devant les importantes possibilités de R, il est possible et utile de lancer certaines recherches en ligne de commande pour trouver des fonctions ou des paquets associés.(NB : une connexion internet est requise) Tout d’abord, pour obtenir l’aide (en anglais) d’une fonction, il y a 2 possibilités : help(LaFonction) #LaFonction = le nom de la fonction#ou?LaFonction#Exemple avec la fonction matrix() qui permet de créer une matrice?matrix Si R vous renvoie un message d’erreur disant que « LaFonction » n’existe pas, c’est que : – soit elle n’existe effectivement pas ! Dans ce cas, vous pouvez essayer de rechercher une fonction qui permet ce que vous voulez viaRead More →

Devant les importantes possibilités de R, il est possible et utile de lancer certaines recherches en ligne de commande pour trouver des fonctions ou des paquets associés.(NB : une connexion internet est requise) Tout d’abord, pour obtenir l’aide (en anglais) d’une fonction, il y a 2 possibilités : help(LaFonction) #LaFonction = le nom de la fonction#ou?LaFonction#Exemple avec la fonction matrix() qui permet de créer une matrice?matrix Si R vous renvoie un message d’erreur disant que "LaFonction" n’existe pas, c’est que : – soit elle n’existe effectivement pas ! Dans ce cas, vous pouvez essayer de rechercher une fonction qui permet ce que vous voulez viaRead More →

De nombreux systèmes sont modélisés par des équations différentielles ordinaires. R peut permettre de résoudre certains de ces systèmes et aussi d’estimer leurs paramètres. On prend ici l’exemple d’un modèle épidémiologique temporel SI. #edo SIXlibrary(deSolve) # on utilise deSolve#on définit le système dans une fonction six icisix<-function(t,x,parms){    with( as.list(c(parms,x)),{    rp<-ap*exp(-bp*t)    rs<-as*exp(-0.5*(log(t/gs)/bs)^2)        dI<- (rp*X*S+rs*I*S)    dS<- -(rp*X*S+rs*I*S)    res<-c(dI,dS)    list(res)})}#on définit les paramètres pour la simulation du systèmeparms<-c(ap=0.002, bp=0.0084, as=5.9e-7, bs=0.25, gs=1396, X=1, N=1010)#on crée un vecteur pour le tempstimes<-seq(0:3000)#valeurs initiales des variables (ici tous les individus sont sains au début)y<- xstart <-(c(I = 0, S = 1010))#on résout le système avec la fonction lsodaout<-as.data.frame(lsoda(xstart, times, six,Read More →

De nombreux systèmes sont modélisés par des équations différentielles ordinaires. R peut permettre de résoudre certains de ces systèmes et aussi d’estimer leurs paramètres. On prend ici l’exemple d’un modèle épidémiologique temporel SI. #edo SIXlibrary(deSolve) # on utilise deSolve#on définit le système dans une fonction six icisix<-function(t,x,parms){    with( as.list(c(parms,x)),{    rp<-apexp(-bpt)    rs<-asexp(-0.5(log(t/gs)/bs)^2)        dI<- (rpXS+rsIS)    dS<- -(rpXS+rsIS)    res<-c(dI,dS)    list(res)})}#on définit les paramètres pour la simulation du systèmeparms<-c(ap=0.002, bp=0.0084, as=5.9e-7, bs=0.25, gs=1396, X=1, N=1010)#on crée un vecteur pour le tempstimes<-seq(0:3000)#valeurs initiales des variables (ici tous les individus sont sains au début)y<- xstart <-(c(I = 0, S = 1010))#on résout le système avec la fonction lsodaout<-as.data.frame(lsoda(xstart, times, six,Read More →

On cherche souvent à modéliser un échantillon par une loi de probabilité. A partir d’un jeu de données, comment peut-on trouver les paramètres d’une loi préalablement fixée? Plusieurs méthodes peuvent être utilisées. On prend l’exemple ici du délai entre l’infection d’un individu et la détection de cet individu comme malade.On modélise ici ce délai (en jours) par une loi de Weibull (on peut aussi essayer les lois gamma et lognormale par exemple) La méthode la plus simple est d’utiliser la fonction fitdistr du package MASS.Cette fonction permet d’ajuster de nombreuses lois par maximum de vraisemblance. Regardons ce que ça donne pour une loi Weibull. #onRead More →

On cherche souvent à modéliser un échantillon par une loi de probabilité. A partir d’un jeu de données, comment peut-on trouver les paramètres d’une loi préalablement fixée? Plusieurs méthodes peuvent être utilisées. On prend l’exemple ici du délai entre l’infection d’un individu et la détection de cet individu comme malade.On modélise ici ce délai (en jours) par une loi de Weibull (on peut aussi essayer les lois gamma et lognormale par exemple) La méthode la plus simple est d’utiliser la fonction fitdistr du package MASS.Cette fonction permet d’ajuster de nombreuses lois par maximum de vraisemblance. Regardons ce que ça donne pour une loi Weibull. #onRead More →

Il existe plusieurs façons de faire un graphique avec deux ordonnées. En voici une qui utilise les outils graphiques de base # Données d’exemple (peu importe…)times<-seq(0,3000)p<- 0.002197451 * exp(- 0.0009076665 *times)b1<- 7.376812e-08b2<-0.2652811b3<- 1986.235s<-b1*exp(-0.5*(log(times/b3)/b2)^2)# On ouvre une nouvelle fenêtre plot.new()# On choisit les paramètres de la fenêtre, voir ?par, ici mar correspond aux marges par(mar=c(5,4,3,4))# On met le premier graphique en définissant les limites des axesplot.new()plot.window(xlim=c(0,3000),ylim=c(0,0.0022))lines(p~times,type=’l’,col=’burlywood1′,lwd=3)# on ajoute les axes et leurs légendesaxis(1)axis(2)title(xlab= »time »)title(ylab= »rp »)# On superpose le graphique avec un axe des ordonnées différent qui sera à droite du graphique (axis(4))plot.window(xlim=c(0,3000),ylim=c(0,8e-08))lines(s~times,type=’l’,col=’burlywood3′,lwd=3)axis(4)#titre du graphiquetitle(main= »force of infection »)#légende de l’ordonnée n°2mtext(« rs »,side=4,line=2.5)#on termine le graphiquebox()Read More →

Il existe plusieurs façons de faire un graphique avec deux ordonnées. En voici une qui utilise les outils graphiques de base # Données d’exemple (peu importe…)times<-seq(0,3000)p<- 0.002197451 exp(- 0.0009076665 times)b1<- 7.376812e-08b2<-0.2652811b3<- 1986.235s<-b1exp(-0.5(log(times/b3)/b2)^2)# On ouvre une nouvelle fenêtre plot.new()# On choisit les paramètres de la fenêtre, voir ?par, ici mar correspond aux marges par(mar=c(5,4,3,4))# On met le premier graphique en définissant les limites des axesplot.new()plot.window(xlim=c(0,3000),ylim=c(0,0.0022))lines(p~times,type=’l’,col=’burlywood1′,lwd=3)# on ajoute les axes et leurs légendesaxis(1)axis(2)title(xlab="time")title(ylab="rp")# On superpose le graphique avec un axe des ordonnées différent qui sera à droite du graphique (axis(4))plot.window(xlim=c(0,3000),ylim=c(0,8e-08))lines(s~times,type=’l’,col=’burlywood3′,lwd=3)axis(4)#titre du graphiquetitle(main="force of infection")#légende de l’ordonnée n°2mtext("rs",side=4,line=2.5)#on termine le graphiquebox()Read More →

Livres sur R: En français [amazon_link asins=’2753548692,2759809633,2759811980,2817801830,2759817369,2710811588,2340005043,2759820602,2804184986′ template=’plop’ store=’abcdr-21′ marketplace=’FR’ link_id= »] Gaël Millot, Comprendre et réaliser les tests statistiques à l’aide de R : Manuel de biostatistique Un excellent aide mémoire pour les utilisateurs averti et un magnifique tutorial pour les débutants. livre volumineux (taille d’un annuaire), à avoir sur sa table de chevet cliquez ici Pierre-André Cornillon et autres, Statistiques avec R, Presses Universitaires de Rennes Un livre de base sur le langage R. Les auteurs présentent comment effectuer certaines analyses de base : régression, ACM, analyse de variance. Un livre idéal pour débuter. cliquez ici En anglais: [amazon_link asins=’1491910399,3319497502,B01MUR61WM,1466586966,1484220765,0321888030,1491950781,331924275X,1491910593′ template=’plop’ store=’abcdr-21′ marketplace=’FR’ link_id= »]Read More →

Liste des interfaces graphiques pour R R est fourni avec un éditeur de texte (RScript) plus ou moins complet en fonction du système d’exploitation que vous utilisez : L’éditeur de texte de R sous Mac OSX est le plus abouti avec coloration syntaxique du code, fermeture automatique des parenthèses/crochets ainsi qu’un inventaire des fonctions. Sous linux, il n’y a pas d’éditeur de script à proprement parler. Par défaut il n’y a que le terminal, pas très ergonomique… Beaucoup d’utilisateurs possèdent un PC sous Windows et là tout se compliquent. Éditer son code avec R sous Windows peut devenir un vrai calvaire dès lors que leRead More →