Pour importer un fichier SAS sas7bdat, la premiere solution est d’utiliser la fonction read.sas7bdat du package sas7bdat library(sas7bdat)donnee<-read.sas7bdat(« fichier.sas7bdat ») Cependant parfois  vous allez tomber sur cette erreur : Error in read.sas7bdat(« ficher.sas7bdat ») : file contains compressed data En effet le package sas7bdat n’est pas capable d’importer les fichiers compressés.Voici une solution qui fonctionne : library(devtools)install_github(« biostatmatt/sas7bdat.parso »)library(sas7bdat.parso) s7b2csv(« fichier.sas7bdat », « fichier.csv ») donnee<-read.csv(« fichier.csv »)  Read More →

la parallélisation des calculs, permet d’exploiter au maximum les capacité calculatoire de votre ordinateur en utilisant tous les core de votre machine ( dual core , quad core …)Cette facpon de proceder est rentable si le calcul que vous voulez faire prend plus de temps que le fait de mettre en place la parallélisation library(foreach)library(doSNOW) getDoParWorkers() registerDoSNOW(makeCluster(4, type = « SOCK »))# 2 , 4 ou plus en fonction de votre machine getDoParWorkers() N <- 10^4 system.time(foreach(i = 1:N,.combine = « cbind ») %do% {sum(rnorm(N))}) system.time(foreach(i = 1:N,.combine = « cbind ») %dopar% {sum(rnorm(N))})Read More →

Une petite fonction sans prétention qui vous permettra de calculer simplement la SEM de tout jeu de donnée. sem<-function(x,digits= 3,na.rm=FALSE){if(na.rm==TRUE) {x<-x[!is.na(x)]}return(round(sd(x)/sqrt(length(x)),digits))} Exemple : data<-c(4,6,7,8,34,67,77,4,4) #soit un jeu de donnée sem(data)[1] 9.736sem(data, digits = 4) #nous pouvons tout à fait spécifier le nombre de chiffre après la virgule à considérer [1] 9.7355Read More →

Afin de tranferer un jeu de données, une liste et à peu pret n’importe quel type d’objet sans devoir envoyer un fichier (csv, Rdata …) vous pouvez utiliser la fonction dput, qui vous donnera la transcription en ligne de code de votre objet. test<-structure(list(Sepal.Length = c(4.7, 4.9, 6.9, 6.3, 6.4, 7.7, 5.1, 5.4, 5.4, 6.3), Species = structure(c(1L, 1L, 3L, 3L, 3L, 3L, 1L, 1L, 1L, 2L), .Label = c(« setosa », « versicolor », « virginica »), class = « factor »)), .Names = c(« Sepal.Length », « Species »), row.names = c(30L, 38L, 140L, 147L, 116L, 119L, 40L, 32L, 17L, 88L), class = « data.frame »)dput(test)dput(iris)dput(summary(lm(1~1)))Read More →

Voici une fonction qui ne devrait pas être utile à beaucoup de personne, mais qui fera très plaisirs à ceux qui veulent generer automatiquement des objets R data(iris) dflist <- split(iris, iris[,5])list2env(dflist, envir = .GlobalEnv)ls() Chacun des element de dflist deviennent des objets dans l’environnement courant de R.Read More →