fonction de coupe dans le marquage R sans notations scientifiques pour une utilisation dans ggplot2
j'utilise des intervalles de coupe et de classe pour grouper les données dans R que je trace plus tard avec ggplot2. Ainsi, une opération de base coupant par quantiles avec n=3 ressemblerait à ceci:
library(classInt)
a<-c(1,10,100,1000,100000,1000000)
b<-cut(a,
breaks=data.frame(
classIntervals(
a,n=3,method="quantile")[2])[,1],
include.lowest=T)
où b
:
[1] [1,70] [1,70] (70,3.4e+04] (70,3.4e+04] (3.4e+04,1e+06] (3.4e+04,1e+06]
Levels: [1,70] (70,3.4e+04] (3.4e+04,1e+06]
donc la première ligne de cette sortie est un vecteur avec mes données groupées qui je peux utiliser dans ggplot2. Mais plutôt que d'avoir ce vecteur en notation scientifique, je voudrais que les étiquettes [1,70] (70,34000] (3400,1000000]
Comment puis-je obtenir?Toute aide serait apprécié, aussi si vous avez d'autres méthodes plutôt que couper et classInt pour obtenir le même résultat.
24
demandé sur
Joschi
2013-03-19 15:03:54
1 réponses
utiliser l'argument dig.lab
cut
fonction:
a<-c(1,10,100,1000,100000,1000000)
b<-cut(a,
breaks=data.frame(
classIntervals(
a,n=3,method="quantile")[2])[,1],
include.lowest=T,dig.lab=10) ##Number of digits used
b
[1] [1,70] [1,70] (70,34000] (70,34000]
[5] (34000,1000000] (34000,1000000]
Levels: [1,70] (70,34000] (34000,1000000]
39
répondu
Jouni Helske
2013-03-19 11:12:43