De temps en temps, les données que l’on utilise peuvent être de grandes tailles et R ne peut pas les prendre en charge car sa mémoire est trop remplie. Dans ce cas 2 solutions s’offrent à vous : soit vous supprimez des éléments (dont vous pouvez avoir la liste avec ls() ) en utilisant rm(nom_ élément_à_supprimer), soit vous augmentez la capacité de la mémoire allouée à R en utilisant la fonction suivante : memory.limit(size=4000) # si par mégarde vous mettez une valeur trop grande, R vous retournera un message d’erreur plein d’humourRead More →

Il peut être pratique parfois de créer un facteur  correspondant à l’interaction de 2 facteurs. Pour cela vous pouvez utiliser tout simplement la fonction interaction() x=letters[rep(seq(from=1,to=5,by=1),rep(5,5))]y=rep(seq(from=1,to=5,by=1),5)interaction(x,y,sep= »_ »)#où sep est le séparateur entre les deux charactèresRead More →

La commande ci-dessous vous retourne la liste des paramètres graphiques et leur valeur trellis.par.get() Pour changer un paramètre, par example axis.text, la commande est la suivante taille<- trellis.par.get(« axis.text ») # extraction du paramètre taille$cex <-5   # changement de sa valeur trellis.par.set(« axis.text », taille) # sauvegarde de la nouvelle valeur  Read More →

Ceci est une liste non exhaustive des paramètres graphiques de la library graphique de base. par() # fonction des paramètres graphiquespar(mar=c(1,1,1,1)) #changer la taille de la marge (bas, gauche, haut, droite)par(oma=c(1,1,1,1)) #changer la taille de la marge extérieure (bas, gauche, haut, droite) par(las=2) #changer l’orientation du texte 0 : toujours parallèle à l’axe [default], 1 : toujours horizontal, 2 : toujours perpendiculaire, 3 : toujours verticalpar(font=1)  #la police à utiliser 1 : normal, 2 : gras , 3 : italiquepar(cex) #la taille du texte Pour plus d’infos, n’oubliez pas ?parRead 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 →