# Generate counts table
library(plyr)
example <- data.frame(count(diamonds,c('color', 'cut')))
example[1:3,]
# Excerpt of table
color cut freq
1 D Fair 163
2 D Good 662
3 D Very Good 1513
Вы можете легко отфильтровать таблицу по частоте> 1000 с помощью: example[example$freq > 1000,]
. Я хотел бы создать таблицу, подобную этой, за исключением того, что все значения меньше значения, например. 1000 включаются в строку (Other)
аналогично тому, что происходит, когда у вас слишком много факторов и вызывается summary(example, maxsum=3)
.
color cut freq
D : 5 Fair : 7 Min. : 119
E : 5 Good : 7 1st Qu.: 592
(Other):25 (Other):21 Median :1204
Mean :1541
3rd Qu.:2334
Max. :4884
Пример идеального вывода:
В идеале я хочу преобразовать это example[example$color=='J',]
:
color cut freq
J Fair 119
J Good 307
J Very Good 678
J Premium 808
J Ideal 896
и произвести это:
color cut freq
J Very Good 678
J Premium 808
J Ideal 896
J (Other) 426
Бонус: если такая фильтрация возможна с помощью ggplot для создания графика, как показано ниже, но с этой фильтрацией, это тоже было бы здорово.
ggplot(example, aes(x=color, y=freq)) + geom_bar(aes(fill=cut), stat = "identity")
Other
? - person mtoto   schedule 06.04.2016