Je suis le traçage d'une variable catégorielle et au lieu d'afficher les nombres pour chaque catégorie de valeur, Je suis à la recherche d'un moyen d'obtenir ggplot pour afficher le pourcentage de valeurs dans cette catégorie. Bien sûr, il est possible de créer une autre variable avec le calcul de pourcentage et de l'intrigue, mais je dois le faire plusieurs dizaines de fois et j'espère que dans une seule commande.
Je faisais des expériences avec quelque chose comme
qplot (mydataf) + stat_bin(aes(n=nrow(mydataf), y=..count../n)) + scale_y_continuous(formatter="percent")
mais je dois l'utiliser de manière incorrecte, comme j'ai eu des erreurs.
Pour reproduire facilement l'installation, voici un exemple simplifié:
mydata <- c ("aa", "bb", null, "bb", "cc", "aa", "aa", "aa", "ee", null, "cc");
mydataf <- factor(mydata);
qplot (mydataf); #this shows the count, I'm looking to see % displayed.
Dans le cas réel, je vais probablement utiliser ggplot au lieu de qplot, mais la bonne façon de l'utiliser stat_bin encore m'échappe.
Je vous remercie.
Mise à JOUR:
J'ai aussi essayé ces quatre approches:
ggplot(mydataf, aes(y = (..count..)/sum(..count..))) + scale_y_continuous(formatter = 'percent');
ggplot(mydataf, aes(y = (..count..)/sum(..count..))) + scale_y_continuous(formatter = 'percent') + geom_bar();
ggplot(mydataf, aes(x = levels(mydataf), y = (..count..)/sum(..count..))) + scale_y_continuous(formatter = 'percent');
ggplot(mydataf, aes(x = levels(mydataf), y = (..count..)/sum(..count..))) + scale_y_continuous(formatter = 'percent') + geom_bar();
mais tous les 4 donner:
Error: ggplot2 doesn't know how to deal with data of class factor
Le même message d'erreur s'affiche pour le cas simple d'
ggplot (data=mydataf, aes(levels(mydataf))) + geom_bar()
donc c'est clairement quelque chose sur la façon ggplot interagit avec un seul vecteur. Je suis de me gratter la tête, à googler pour cette erreur donne un seul résultat.