################################################################## moyPair <- function(nomData="",tri=FALSE,dec=2) { ################################################################## # aide éventuelle si pas de paramètre if (missing(nomData) | (nomData=="")) { cat("fonction moyPair() : calcul des moyennes et tracé par paires (gH)\n") cat(' syntaxe : moyPair(nomData="",tri=FALSE,dec=2)\n') cat(' exemples : moyPair(wines)\n') return(invisible(NULL)) } ; # fin de si # test de la présence du fichier des données dataFic <- paste(nomData,".dar",sep="") if (!file.exists(dataFic)) { stop(paste("\n Fichier ",dataFic," non vu. Stop.\n\n")) } # fin de si # 1. lecture des données donnees <- read.table(dataFic,head=TRUE,row.names=1,as.is=TRUE) # 2. calcul des min, moyennes et max matRes <- t(apply(X=donnees,F=function(x) c(min(x),mean(x),max(x)),M=2)) colnames(matRes) <- c("minimum","moyenne","maximum") # tri éventuel par moyenne décroissante if (tri) { idx <- order(matRes[,2],decreasing=TRUE) matRes <- cbind(matRes[idx,]) } # fin si # affichage avec "dec" décimales print(round(matRes,dec)) # écriture des résultat dans un fichier txt resFic <- paste(nomData,"_moy.txt",sep="") sink(resFic) print(matRes) sink() cat(" le fichier ",resFic," contient les cacluls en colonne.\n") # 3. tracé par paires pairs(donnees,main=nomData) outPdf <- paste(nomData,"_pair.pdf",sep="") pdf(outPdf) pairs(donnees,main=nomData) dev.off() cat(" le fichier ",outPdf," contient le graphique par paires.\n") } # fin de fonction moyPair ################################################################## # exemple d'utilisation : # # moyPair("wines") # moyPair(nomData="vins",dec=0) # moyPair(nomData="usa",tri=TRUE) # moyPair(nomData="vins",tri=TRUE,dec=1)