R est un langage itératif, c’est a dire que le logiciel va interpréter une ligne de code après l’autre.Pour gagner de la place, on peut vouloir écrire une série d’opérations sur une seule ligne. On perd en lisibilité, mais pour les choses simples cela peut être pratique. rm(list=ls(all=TRUE))a<-5b<-7# peut s’écrire sur une ligne grace au séparateur ;rm(list=ls(all=TRUE));a<-5;b<-7 # pour les boucles for while ou les if, on peut compresser comme cela x<-10for ( i in 1:10){print(i)x<-xiprint(x)print("coucou")} # s’écrit en une lignex<-10;for ( i in 1:10){print(i);x<-xi;print(x);print("coucou")}  Read More →

R est un langage itératif, c’est a dire que le logiciel va interpréter une ligne de code après l’autre.Pour gagner de la place, on peut vouloir écrire une série d’opérations sur une seule ligne. On perd en lisibilité, mais pour les choses simples cela peut être pratique. rm(list=ls(all=TRUE))a<-5b<-7# peut s’écrire sur une ligne grace au séparateur ;rm(list=ls(all=TRUE));a<-5;b<-7 # pour les boucles for while ou les if, on peut compresser comme cela x<-10for ( i in 1:10){print(i)x<-x*iprint(x)print(« coucou »)} # s’écrit en une lignex<-10;for ( i in 1:10){print(i);x<-x*i;print(x);print(« coucou »)}  Read More →

La fonction « by » est très intéressante pour éviter des boucles « for » et ainsi optimiser le code data(iris)summary(iris)by(iris[,-5],iris[,5],mean)  ou encore quant vous voulez effectuer une fonction qui n’est pas définie. by(iris[,-5],iris[,5],function(ob){#mettez ici l’opération que vous voulez faire sur le subsetreturn()})  Le problème peut être que by retourne une liste et que l’on voudrait avoir un tableau de données. C’est ce que fait la fonction do.call, elle prend une liste et effectue une action dessus (ici rbind). data(iris)summary(iris)do.call(rbind,by(iris[,-5],iris[,5],mean) )Read More →

La fonction "by" est très intéressante pour éviter des boucles "for" et ainsi optimiser le code data(iris)summary(iris)by(iris[,-5],iris[,5],mean)  ou encore quant vous voulez effectuer une fonction qui n’est pas définie. by(iris[,-5],iris[,5],function(ob){#mettez ici l’opération que vous voulez faire sur le subsetreturn()})  Le problème peut être que by retourne une liste et que l’on voudrait avoir un tableau de données. C’est ce que fait la fonction do.call, elle prend une liste et effectue une action dessus (ici rbind). data(iris)summary(iris)do.call(rbind,by(iris[,-5],iris[,5],mean) )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 →