determin.quantiquanti<- function(x,y,fig=F,rcmdr=F,echo=T,labelX="X",labelY="Y") { # détermination des coefficients de la droite a,b, le coefficient de correlation linéaire r et de la probabilité # critique pour le croisement de deux varaibles quantitatives et éventuel graphique (nuage de points et droite de régression) # ********************************************************* # determin.quantiquanti(x,y,fig,rcmdr,echo,labelX,labelY) : # * Variables d'entrées : # * x,y : les 2 vecteurs des données quantitatives (dans cet ordre) # * fig : booléen, faux par défaut (si vrai sortie de la figure) # * rcmdr : booléen égal à F par défaut pour faire un nuage de point à la "Rcmdr" # * echo : booléen, vrai par défaut (si vrai sortie des résultats) # * labelX et labelY : les labels des légendes de axex X et Y (égaux à "X" et "Y" par défaut) # * Variables de sortie éventuelle : # * a: la pente de la droite # * b: l'ordonnée à l'origine de la droite # * r: coefficient de correlation linéaire # * pc: probabilité critique lmd <- lm(y~x) if (fig) {if (rcmdr) {if (!require(car)) stop("car package missing") scatterplot(x,y,reg.line=lm, smooth=TRUE,labels=FALSE, boxplots='xy', span=0.5, xlab=labelX, ylab=labelY) } else {plot(x,y,pch=15,las=1,main=paste(labelY," en fonction de ",labelX),xlab=labelX,ylab=labelY) abline(lmd,col="red") } } if (echo) {coeff<-coefficients(lmd) b<-as.numeric(coeff[1]) a<-as.numeric(coeff[2]) indc<-!is.na(x)&!is.na(y) r<-cor(x[indc],y[indc]) pprovi<-summary(lmd) pprovi<-pprovi[[4]] pc<-pprovi[[8]] return(list(a=a,b=b,r=r,pc=pc))} }