J'obtiens cette erreur en traçant un graphique à barres et je ne suis pas en mesure de m'en débarrasser, j'ai essayé à la fois qplot et ggplot mais toujours la même erreur.
Voici mon code:
library(dplyr)
library(ggplot2)
#Investigate data further to build a machine learning model
data_country = data %>%
group_by(country) %>%
summarise(conversion_rate = mean(converted))
#Ist method
qplot(country, conversion_rate, data = data_country,geom = "bar", stat ="identity", fill = country)
#2nd method
ggplot(data_country)+aes(x=country,y = conversion_rate)+geom_bar()
Erreur:
stat_count() must not be used with a y aesthetic
Données dans data_country:
country conversion_rate
<fctr> <dbl>
1 China 0.001331558
2 Germany 0.062428188
3 UK 0.052612025
4 US 0.037800687
L'erreur vient dans le graphique à barres et non dans le graphique en pointillés.
aes
est en fait une fonction. L'argumentggplot
estmapping
. Nous fournissons ce mappage via laaes
fonction, de sorte que vous voyezggplot(df, aes(...))
beaucoup le modèle . Mais le motif ggplot (data_frame) + aes (x = X, y = Y) convient également. En plus d'une meilleure lisibilité, l'appelaes
séparé peut être utilisé pour modifier l'esthétique d'un tracé prédéfini: p <- ggplot (iris) + aes (x = Species, y = Sepal.Length) + geom_point (); q <- p + aes (y = Petal.Length)lorsque vous souhaitez utiliser vos données existantes dans votre bloc de données comme valeur y, vous devez ajouter stat = "identity" dans le paramètre de mappage. La fonction geom_bar a la valeur y par défaut. Par exemple,
la source
Vous pouvez utiliser geom_col () directement. Voir les différences entre geom_bar () et geom_col () dans ce lien https://ggplot2.tidyverse.org/reference/geom_bar.html
la source
Je cherchais la même chose et cela peut aussi fonctionner
la source