Exportation du summary()

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Romain Lecachey
Messages : 33
Enregistré le : 10 Avr 2007, 08:57

Exportation du summary()

Messagepar Romain Lecachey » 25 Mai 2007, 13:56

Bonjour tout le monde !

J'ai encore un soucis : je pensais avoir compris comment récupérer mon summary et l'exporter vers un fichier mais je viens de retomber sur le même type d'erreur et je ne vois pas comment la contourner !
Voici mon code :

Code : Tout sélectionner

anovaUnFacteur <- function(fichierImg,fichierCSV,type_image,donnees,VarTest,VarEffet)
{
anov1=lm(VarEffet~VarTest,donnees)
ss=summary(anov1)
tabRes=data.frame(ss)
write.csv2(tabRes, fichierCSV, row.names = TRUE)

bitmap(fichierImg, type_image ,width=10,height=10,res=72,pointsize=12)
par(mfrow=c(2,2))

boxplot(VarEffet ~ VarTest,data = donnees,main="Boxplot",xlab = "Variable à tester", ylab = "Variable d''effet",boxwex = 0.5,col = "orange")
qqnorm(anov1$res,pch=21,col="blue",bg="yellow")
qqline(anov1$res,col="red")
plot(anov1$fit,anov1$res,xlab="Fitted",ylab="Residuals",main="Residual-Fitted plot",pch=21,col="red",bg="yellow")
plot(jitter(anov1$fit),anov1$res,xlab="Fitted",ylab="Residuals",main="Jittered plot",pch=21,col="green",bg="yellow")

dev.off()
graphics.off()
}


Et j'ai cette erreur qui s'affiche :

Code : Tout sélectionner

anovaUnFacteur("/home/rom/anI","/home/rom/anT","png256",tabb,dece,jours)
Erreur dans as.data.frame.default(x[[i]], optional = TRUE, stringsAsFactors = stringsAsFactors) :
        impossible de convertir automatiquement "summary.lm" en un tableau de données (data.frame)


Je comprends pourquoi ça ne marche pas mais j'ai beau essayer différentes façons de faire, mon summary ne s'exporte pas, il est chiant ce summary, il m'enerve ce summary.....
Quelqu'un aurait une idée ?
On m'a déjà suggérer la fonction sink() mais je ne vois pas comment elle marche !
Merci d'avance !

Romain Lecachey
Messages : 33
Enregistré le : 10 Avr 2007, 08:57

Messagepar Romain Lecachey » 25 Mai 2007, 14:34

C'est bon, j'ai enfin trouvé grâce à la fonction capture.output !
Voici ce que ça donne:

Code : Tout sélectionner

anovaUnFacteur <- function(fichierImg,fichierCSV,type_image,donnees,VarTest,VarEffet)
{
anov1=lm(VarEffet~VarTest,donnees)
ss=summary(anov1)
capture.output(ss,file=fichierCSV,  append = FALSE)

bitmap(fichierImg, type_image ,width=10,height=10,res=72,pointsize=12)
par(mfrow=c(2,2))

boxplot(VarEffet ~ VarTest,data = donnees,main="Boxplot",xlab = "Variable à tester", ylab = "Variable d''effet",boxwex = 0.5,col = "orange")
qqnorm(anov1$res,pch=21,col="blue",bg="yellow")
qqline(anov1$res,col="red")
plot(anov1$fit,anov1$res,xlab="Fitted",ylab="Residuals",main="Residual-Fitted plot",pch=21,col="red",bg="yellow")
plot(jitter(anov1$fit),anov1$res,xlab="Fitted",ylab="Residuals",main="Jittered plot",pch=21,col="green",bg="yellow")

dev.off()
graphics.off()
}


C'est la classe !
Par contre je ne sais pas encore ce que ça va donner quand je vais vouloir récupérer ces données via Php !
Aîiiiiie !
Je vous retiens au courant !
@+


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Bing [Bot] et 1 invité