2017-06-20 7 views
0

Salut, je voudrais savoir comment puis-je récupérer l'équation de stat_smooth soit dans le ggplot2 ou dans un vecteur ou ailleurs. le code que j'utilise est:Recevoir l'équation de stat_smooth dans ggplot2 R mtcars exemple

p <- ggplot(data = mtcars, aes(x = disp, y = drat)) 
p <- p + geom_point() + stat_smooth(method="loess") 
p 

Merci

+0

Je pense que votre seule option est d'obtenir directement dans le code de 'stat_smooth'. Quel est votre objectif en premier lieu? –

+0

pour utiliser l'équation (meilleur ajustement) et la généraliser pour un ajustement de données similaire –

Répondre

1

Le paquet ggpmisc peut être très utile. Cependant, cela ne fonctionnera pas avec loess car loess ne donne pas de formule. Voir ici: Loess Fit and Resulting Equation

library(ggplot2) 
library(ggpmisc) 
p <- ggplot(data = mtcars, aes(x = disp, y = drat)) + 
    geom_point() + 
    geom_smooth(method="lm", formula=y~x) + 
    stat_poly_eq(parse=T, aes(label = ..eq.label..), formula=y~x) 
p 

enter image description here

+0

Y a-t-il une autre alternative à la fonction loess? ou pas –

+0

loess est plutôt une visualisation de la tendance de vos données. Si vous voulez une équation, je recommanderais d'appliquer des techniques de régression comme les modèles linéaires, la régression polynomiale ou les modèles adaptatifs généralisés (GAM). Cependant, dans la plupart des cas, vous devrez définir _a priori_ quelle est la relation entre vos données, par exemple y ~ x ou y ~ x + x^2. Voici une discussion intéressante concernant votre question: [link] (https://stackoverflow.com/questions/7550582/when-to-choose-nls-over-loess) – MikolajM