Les 267 fonctions de statgh.r (version 6.49) Chargement des fonctions : source("http://forge.info.univ-angers.fr/~gh/wstat/statgh.r",encoding="latin1") Choisissez la fonction : acp acpFacteur acpLoadings addClassMeans aide ajouteTotaux ajusteNomsColonnes allCalcQT allQL allQLm allQLnonum allQLrecap allQLtriap allQLtricr allQT allQT2 allQTdf allqtdbf anaLin anaTcr analexies analyseCoefficientsModeleLogistique analyseMedianes analyseRegression anared approxPoissNorm approximationBinomiale approximationPoissonnienne approximations as.sigcode asc attends auroc aurocQlPred aurocs aurocs_delong bbpQT beanplotQT bendist bestCor bestCorDf bestGroupRep bestValAssoc bioc bloc boxplotQT cadreCah2co cah2co catln catn cats catss cb cd cdr cdrn chaineEnListe chaineEnVectNum charToNum checklm chi2 chi2Adeq chi2Indep chi2IndepTable chi2IndepTableFacteur chr clusterCor clusterCorTrans coefficientsRLB col.names col2fact colMaxs colMedians colMins compMoyData compMoyNoData compPourc compare2QT compare2QTappariees compareScoresBinaires compareScoresFL compareScoresMetavir copies corCircle couleursFL couleursMetavir couleursNmds cpt cr cv datagh ddata debutHtml decritClass decritModeleLogistiqueBinaire decritQL decritQLf decritQT decritQTparFacteur decritQTparFacteurTexte decritRLB devoff df2csv df2dac dfSansCor dfSansNA dimdf dims discordance dql dqt dtQT duree ecrit.csv ecrit.dac ecrit.dar ecrit.df ecrit.xls ect enColonnes enFacteur exploreCorrelations exprimeDuree extrait fcomp finHtml finsink fql fqt ghtrim go gr hbbpQT hhead histEffectifs histProba histQL histoQT hprint htmlsrc ic ice iceQT icm icmQT icp identif identifgc ifiab installe lesColonnes lesVariables lib ligneCadreCtrACP lignePointillesACP linCor linmodelstats lit lit.dac lit.dar lit.dar.lh lit.dar.wd lit.dat lit.dbf lit.texte lit.xls litcol lls lstMod matCor matId matPen maxMatCor mcomed mdc milieu milieux minMatCor modalitesFL modalitesMetavir modelesCLMMetavir modelesFDAMetavir modelesLDAMetavir modelesMDAMetavir modelesQDAMetavir modelesRLB modelesRLIMetavir mot mots moy nbmots noask noconst nodup nomDeFichier nombase nonoui numeroteId optionsPrint ouinon pairsi panel.cor panel.cor2 panel.corpvalue panel.pointsreg parPrint pchShow pctBcLda plotQL plotQT plotQTdet print10 pwd rchModeleLogistique rch_VE recadrage redata reduitVarsCor reformate regh regressionLogistiqueBinaire regressionLogistiqueOrdinale regressionLogistiqueOrdinale2 rlo_ord rlobin rownames rsd ruler run scr sdmax sdr sensSpec showColors simule sinksource sinksrc skku somCols sorsrc src strlen surncarg tailleEchMoy tailleEchProp tdn tmp traceCor traceLin traceQL traceRLB traceTcr triAPlats triAplat triAplatAvecOrdre triAplatNonum triCroise triCroiseBC triCroiseSansMarges triaplat ucfirst vecteurEnChaine verifSol versiongh violinplotQT vvar xls2dar z Exemples d'utilisation de la fonction mdc mdc(vinsData) mdc(vinsData,meilCor=TRUE) Corps de la fonction mdc mdc <- function(dataMatrix,nomV="",meilcor=FALSE,method="pearson",maxcor=FALSE,mincor=FALSE,stopcor=0,print=TRUE) { ################################################################# # calcul de la matrice des coefficients de corr�lation lin�aire # # nomV est le nom des variables # exemple d'utilisation : # # mdc(lesQT,c("AGE","POIDS","TAILLE","ALCOOL")) # if (missing(dataMatrix)) { cat("mdc : Matrice Des Coefficients de corr�lation \n") cat("syntaxe : mdc(dataMatrix,nomV=\"\",meilcor=FALSE,method=\"pearson\")\n") return() } # fin de si dm <- dim(dataMatrix) ; nl <- dm[1] nc <- dm[2] resMat <- matrix(nrow=nc,ncol=9) if (length(nomV)==1) { if (nomV=="") { nomV <- colnames(dataMatrix) } } # finsi corMat <- matrix(nrow=nc,ncol=nc) ; pvalue <- matrix(nrow=nc,ncol=nc) ; rownames(corMat) <- as.vector(nomV) colnames(corMat) <- nomV meiCor <- (-3) iEtj <- "-99" for (i in 1:nc) { vi <- dataMatrix[,i] for (j in 1:nc) { if (i<j) { f_cor <- "" } else { vj <- dataMatrix[,j] corij <- cor(vi,vj,use="pairwise.complete.obs",method=method) #cat(" i j corij meilCor ",i,j,corij,meiCor,"\n") if (!is.na(corij)) { if ((meiCor<corij) & (i!=j)) { meiCor <- corij iEtj <- c(i,j) } # fin de si sur meiC } # fin de si sur na de corij f_cor <- formatC(corij,"f",width=5,dig=3) } ; # fin de si sur i<j corMat[i,j] <- f_cor pvalue[i,j] <- cor.test(vi,vj,use="pairwise.complete.obs")$p.value #cat(" i j f_cor ",i,j,f_cor,"\n") } # fin pour j } # fin pour i if (print) { cat("\nMatrice des corr�lations au sens de ",ucfirst(method),"pour ",nl," lignes et ",nc," colonnes\n\n") ; print(corMat,quote=FALSE,right=TRUE) ; } # fin si if (nc>1) { if (maxcor) { cat("\nMeilleure corr�lation hors diagonale : ") cm <- cor(dataMatrix,method=method,use="pairwise.complete.obs") for (i in 1:nc) { cm[i,i] <- 0 } # fin pour i cormax <- max(abs(cm)) for (i in 2:nc) { for (j in 1:(i-1)) { if (abs(cm[i,j])==cormax) { f_cor <- sprintf("%8.3f",cm[i,j]) cat(f_cor," pour ") cat(colnames(cm)[i]," et ",colnames(cm)[j]) } ; # fin si } # fin pour i } # fin pour i if (!mincor) { cat("\n") } } ; # fin de si if (mincor) { cat("\nPlus faible coefficient de corr�lation : ") cm <- cor(dataMatrix,method=method,use="pairwise.complete.obs") cormin <- min(abs(cm)) for (i in 2:nc) { for (j in 1:(i-1)) { if (abs(cm[i,j])==cormin) { f_cor <- sprintf("%8.3f",cm[i,j]) cat(f_cor," pour ") cat(colnames(cm)[i]," et ",colnames(cm)[j]) } ; # fin si } # fin pour i } # fin pour i cat("\n") } ; # fin de si if (method=="pearson") { if (meilcor) { # Meilleures corr�lations xmeiCor <- iEtj[1] ymeiCor <- iEtj[2] nomX <- nomV[xmeiCor] nomY <- nomV[ymeiCor] lesX <- dataMatrix[,xmeiCor] lesY <- dataMatrix[,ymeiCor] #lesC <- lm( lesY ~ lesX,model=FALSE ) # � cause des arrondis, on recalcule les valeurs pr�cises idX <- !is.na(lesX) idY <- !is.na(lesY) lesX <- lesX[ idX & idY ] lesY <- lesY[ idX & idY ] mX <- mean(lesX) eX <- sqrt( mean(lesX*lesX) - mX*mX) mY <- mean(lesY) eY <- sqrt( mean(lesY*lesY) - mY*mY) ro <- (mean(lesX*lesY) - mX*mY)/(eX*eY) vA <- ro*eY/eX vB <- mY - vA*mX wA <- ro*eX/eY wB <- mX - wA*mY if (vB<0) { sgn1 <- "" } else { sgn1 <- "+" } if (wB<0) { sgn2 <- "" } else { sgn2 <- "+" } pval <- formatC( cor.test(lesX,lesY,use="pairwise.complete.obs")$p.value, width=5,dig=3) cat("\nMeilleure corr�lation ",meiCor," pour ",nomX," et ",nomY," p-value ",pval,"\n\n") ; fXY <- paste(nomY," = ",formatC(vA,"f",width=9,dig=3),"*",nomX," ",sgn1,formatC(vB,"f",width=9,dig=3)) ; fYX <- paste(nomX," = ",formatC(wA,"f",width=9,dig=3),"*",nomY," ",sgn2,formatC(wB,"f",width=9,dig=3)) ; cat("Formules ",fXY,"\n") ; cat(" et ",fYX,"\n") ; # trac� correspondant � la meilleure corr�lation oX <- order(lesX) newX <- lesX[ oX] newY <- lesY[ oX] #par(lwd=2) #postscript("r.ps") ; #plot(newX,newY,"b",col="red",pch=21,bg="orange",fg="black",xlab=nomX,ylab=nomY) #title(paste(" R�gression ",fXY," (rho=",meiCor,")")) #abline(c(vB,vA),col="blue") #dev.off() # affichage des corr�lations par ordre d�croissant # on en fait d'abord un vecteur de valeurs if (nc>2) { cat("\n Coefficients de corr�lation par ordre d�croissant \n\n") ; if (stopcor>0) { cat("(on se restreint aux corr�lations sup�rieures � ",stopcor," en valeur absolue)\n\n",sep="") } # fin si tvec <- nc*(nc-1)/2 vecMdc <- matrix(nrow=tvec,ncol=4) ; # initialisation for (idc in 1:tvec) { vecMdc[idc,1] <- 0 vecMdc[idc,2] <- 0 vecMdc[idc,3] <- 0 } # fin pour idc # remplissage idc <- 0 for (i in 2:nc) { for (j in 1:(i-1)) { idc <- idc + 1 vcor <- corMat[i,j] # pour debug : cat(i,j,idc,vcor,"\n") ; vecMdc[idc,1] <- vcor vecMdc[idc,2] <- i vecMdc[idc,3] <- j vecMdc[idc,4] <- pvalue[i,j] } # fin pour j } # fin pour i # tri de vecMdc if (tvec>1) { for (idc in 1:(tvec-1)) { for (jdc in (idc+1):tvec) { vecMdc[idc,1] -> vi vecMdc[jdc,1] -> vj if (vi<vj) { vecMdc[idc,2] -> vi2 ; vecMdc[idc,3] -> vi3 ; vecMdc[idc,4] -> vi4 vecMdc[jdc,2] -> vj2 ; vecMdc[jdc,3] -> vj3 ; vecMdc[jdc,4] -> vj4 vecMdc[idc,1] <- vj ; vecMdc[idc,2] <- vj2 ; vecMdc[idc,3] <- vj3 ; vecMdc[idc,4] <- vj4 vecMdc[jdc,1] <- vi ; vecMdc[jdc,2] <- vi2 ; vecMdc[jdc,3] <- vi3 ; vecMdc[jdc,4] <- vi4 } # fin de si } # fin pour jdc } # fin pour idc } # fin de si # affichage nomC <- rownames(corMat) ; lngMax <- max(sapply(nomC,nchar)) for (i in 1:tvec) { f1 <- formatC(vecMdc[i,1],"f",width=9,dig=3) ; f2 <- formatC(vecMdc[i,2],"f",width=9,dig=3) ; f3 <- formatC(vecMdc[i,3],"d",width=5) ; n2 <- nomC[ as.integer(vecMdc[i,2]) ] ; n3 <- nomC[ as.integer(vecMdc[i,3]) ] ; fn2 <- sprintf(paste("%-",lngMax,"s",sep=""),n2) fn3 <- sprintf(paste("%-",lngMax,"s",sep=""),n3) #f1bis <- sprintf("%6.4f",vecMdc[i,4]) f1bis <- sprintf("%6.4f",as.numeric(vecMdc[i,4])) if (!vecMdc[i,1]==" NaN") { lesc <- coefficients(lm(dataMatrix[,n2] ~ dataMatrix[,n3])) esp <- " " if (lesc[2]<0) { esp <- "" } # fin si sgnc <- "+" if (lesc[1]<0) { sgnc <- "-" lesc[1] <- (-lesc[1]) } # fin si lesca <- sprintf("%0.3f",lesc[2]) lescb <- sprintf("%0.3f",lesc[1]) if (abs(as.numeric(f1))>stopcor) { cat(f1,"p-value ",f1bis," pour ",fn2," et ",fn3," : ",fn2,"=",esp,lesca,"x",fn3,sgnc,lescb,"\n") ; } # fin de si } # fin de si } # fin pour i } # fin de si } ; # fin de si meilcor=true } ; # fin de si method=pearson } ; # fin de si nc>1 } # fin de fonction mdc Cliquer ici pour revenir à la page de départ Code-source de la page explications archive zip du code de statgh.r Retour à la page principale de (gH)
Chargement des fonctions :
source("http://forge.info.univ-angers.fr/~gh/wstat/statgh.r",encoding="latin1")
Choisissez la fonction :
acp acpFacteur acpLoadings addClassMeans aide ajouteTotaux ajusteNomsColonnes allCalcQT allQL allQLm allQLnonum allQLrecap allQLtriap allQLtricr allQT allQT2 allQTdf allqtdbf anaLin anaTcr analexies analyseCoefficientsModeleLogistique analyseMedianes analyseRegression anared approxPoissNorm approximationBinomiale approximationPoissonnienne approximations as.sigcode asc attends auroc aurocQlPred aurocs aurocs_delong bbpQT beanplotQT bendist bestCor bestCorDf bestGroupRep bestValAssoc bioc bloc boxplotQT cadreCah2co cah2co catln catn cats catss cb cd cdr cdrn chaineEnListe chaineEnVectNum charToNum checklm chi2 chi2Adeq chi2Indep chi2IndepTable chi2IndepTableFacteur chr clusterCor clusterCorTrans coefficientsRLB col.names col2fact colMaxs colMedians colMins compMoyData compMoyNoData compPourc compare2QT compare2QTappariees compareScoresBinaires compareScoresFL compareScoresMetavir copies corCircle couleursFL couleursMetavir couleursNmds cpt cr cv datagh ddata debutHtml decritClass decritModeleLogistiqueBinaire decritQL decritQLf decritQT decritQTparFacteur decritQTparFacteurTexte decritRLB devoff df2csv df2dac dfSansCor dfSansNA dimdf dims discordance dql dqt dtQT duree ecrit.csv ecrit.dac ecrit.dar ecrit.df ecrit.xls ect enColonnes enFacteur exploreCorrelations exprimeDuree extrait fcomp finHtml finsink fql fqt ghtrim go gr hbbpQT hhead histEffectifs histProba histQL histoQT hprint htmlsrc ic ice iceQT icm icmQT icp identif identifgc ifiab installe lesColonnes lesVariables lib ligneCadreCtrACP lignePointillesACP linCor linmodelstats lit lit.dac lit.dar lit.dar.lh lit.dar.wd lit.dat lit.dbf lit.texte lit.xls litcol lls lstMod matCor matId matPen maxMatCor mcomed mdc milieu milieux minMatCor modalitesFL modalitesMetavir modelesCLMMetavir modelesFDAMetavir modelesLDAMetavir modelesMDAMetavir modelesQDAMetavir modelesRLB modelesRLIMetavir mot mots moy nbmots noask noconst nodup nomDeFichier nombase nonoui numeroteId optionsPrint ouinon pairsi panel.cor panel.cor2 panel.corpvalue panel.pointsreg parPrint pchShow pctBcLda plotQL plotQT plotQTdet print10 pwd rchModeleLogistique rch_VE recadrage redata reduitVarsCor reformate regh regressionLogistiqueBinaire regressionLogistiqueOrdinale regressionLogistiqueOrdinale2 rlo_ord rlobin rownames rsd ruler run scr sdmax sdr sensSpec showColors simule sinksource sinksrc skku somCols sorsrc src strlen surncarg tailleEchMoy tailleEchProp tdn tmp traceCor traceLin traceQL traceRLB traceTcr triAPlats triAplat triAplatAvecOrdre triAplatNonum triCroise triCroiseBC triCroiseSansMarges triaplat ucfirst vecteurEnChaine verifSol versiongh violinplotQT vvar xls2dar z
Cliquer ici pour revenir à la page de départ
Code-source de la page explications archive zip du code de statgh.r
Retour à la page principale de (gH)